From 3cfa44b29eef4eccc1c2edcb4efd19e338506189 Mon Sep 17 00:00:00 2001 From: Roger Ostrander Date: Mon, 28 Oct 2013 12:52:28 -0700 Subject: [PATCH] Vote details: refactor out decoding --- r2/r2/models/vote.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/r2/r2/models/vote.py b/r2/r2/models/vote.py index b1dbde0c7..8668d01c1 100644 --- a/r2/r2/models/vote.py +++ b/r2/r2/models/vote.py @@ -124,13 +124,17 @@ class VoteDetailsByThing(tdb_cassandra.View): raise ValueError try: - raw_details = details_cls._byID(thing._id36)._values() + raw_details = details_cls._byID(thing._id36) + return raw_details.decode_details() except tdb_cassandra.NotFound: - raw_details = {} + return [] + + def decode_details(self): + raw_details = self._values() details = [] for key, value in raw_details.iteritems(): data = Storage(json.loads(value)) - data["_id"] = key + "_" + thing._id36 + data["_id"] = key + "_" + self._id data["voter_id"] = key details.append(data) details.sort(key=lambda d: d["date"])