def create(cls, **query): inst = super(UserGiftLog, cls).create(**query) if inst: if inst.gift_from == const.FROM_RECORD: key = VIDEO_GIFT_KEY % (inst.from_id) try: if Redis.exists(key) and query.get("send_success"): Redis.zadd(key, util.datetime2timestamp(inst.create_at), cjson.dumps(inst, 2)) except exceptions.ResponseError: Redis.delete(key) key = TOP_SENDER_KEY % (inst.user_id) try: if Redis.exists(key) and query.get("send_success"): Redis.zincrby(key, inst.gold_price, inst.from_user) except exceptions.ResponseError: Redis.delete(key) if inst.gift_from == const.FROM_LIVE: key = USER_TOTAL_GOLD % ({'uid': inst.user_id}) Redis.delete(key) return inst
def test_cached_zset(self): self._cached_zset() self.assertEqual(Redis.get(self.ZSET_KEY), 'empty') with self.assertRaises(exceptions.ResponseError): Redis.zadd(self.ZSET_KEY, 1, 'dog', 2, 'pig') Redis.delete(self.ZSET_KEY) self._cached_zset((1, 'dog', 2, 'pig')) self.assertListEqual(Redis.zrevrange(self.ZSET_KEY, 0, -1), ['pig', 'dog'])
def create_model(self): _id = super(ActivityComment, self).create_model() if _id: key = self.ACTIVITY_COMMENT_IDS % ({'aid': str(self.activity)}) # 列表为空时key对应的value是一个string try: if Redis.exists(key): Redis.zadd(key, self.create_at, str(_id)) except exceptions.ResponseError: Redis.delete(key) return _id
def create_model(self): _id = super(UserPopularGame, self).create_model() if _id: key = self.POP_GAME_IDS % ({'uid': str(self.source)}) try: if Redis.exists(key): Redis.zadd(key, self.create_at, str(self.target)) except exceptions.ResponseError: Redis.delete(key) return _id
def create_model(self): _id = super(DaTangVideo, self).create_model() if _id: if self.online: key = self.USER_GAME_VIDEO_IDS % ({'uid': str(self.author), 'gid': str(self.game)}) try: if Redis.exists(key): Redis.zadd(key, self.create_at, str(_id)) except exceptions.ResponseError: Redis.delete(key) return _id
def update_model(self, data={}): obj = super(DaTangVideo, self).update_model(data) if obj: # 下线-->上线 if self.offline and obj.online: key = self.USER_GAME_VIDEO_IDS % ({'uid': str(self.author), 'gid': str(self.game)}) try: if Redis.exists(key): Redis.zadd(key, self.create_at, str(self._id)) except exceptions.ResponseError: Redis.delete(key) return obj
def create_model(self): _id = super(ActivityVideo, self).create_model() if _id: key = self.LATEST_VIDEO_IDS % ({'aid': str(self.activity_id)}) try: Redis.zadd(key, self.create_at, str(self._id)) except exceptions.ResponseError: Redis.delete(key) Redis.delete(self.TOP_COMPETE_VIDEO_IDS % ({'aid': str(self.activity_id)})) Redis.delete(self.TOP_VIDEO_END % ({'aid': str(self.activity_id)})) Redis.delete(self.TOP_MANUAL_TOP % ({'aid': str(self.activity_id)})) return _id
def create_model(self): _id = super(Comment, self).create_model() if _id: # 更新视频评论数 from wanx.models.video import Video video = Video.get_one(str(self.video), check_online=False) video.update_model({'$inc': {'comment_count': 1}}) key = self.VIDEO_COMMENT_IDS % ({'vid': str(self.video)}) # 列表为空时key对应的value是一个string try: if Redis.exists(key): Redis.zadd(key, self.create_at, str(_id)) except exceptions.ResponseError: Redis.delete(key) return _id
def create_model(self): _id = super(Reply, self).create_model() if _id: # 更新评论回复数 comment = Comment.get_one(str(self.comment), check_online=False) comment.update_model({'$inc': {'reply': 1}}) # 更新回复的回复数 if self.reply: _reply = Reply.get_one(str(self.reply), check_online=False) _reply.update_model({'$inc': {'reply_count': 1}}) key = self.COMMENT_REPLY_IDS % ({'cid': str(self.comment)}) # 列表为空时key对应的value是一个string try: if Redis.exists(key): Redis.zadd(key, self.create_at, str(_id)) except exceptions.ResponseError: Redis.delete(key) return _id