def enrich_item(item_id): item = db_session.query(Item).get(item_id) return { 'id': item.id, 'data': item.data, 'created_by': item.created_by, 'created_ts': item.created_ts, 'updated_ts': item.updated_ts }
def add_leader_to_follower_feed(follower_id, leader_id): """ Get all leader items and add to follower's feed """ feed = FEED_ID % (follower_id,) items = db_session.query(Item)\ .filter(Item.created_by==leader_id)\ .all() rconn.lpush(feed, *[item.id for item in items]) print '%d items added to feed %s' % (len(items), feed)
def remove_leader_from_follower_feed(follower_id, leader_id): """ Get all items in follower's feed and filter out leader's """ feed = FEED_ID % (follower_id,) feed_length = rconn.llen(feed) items = rconn.lrange(feed, 0, feed_length) removed_count = 0 for i, item_id in enumerate(items): item = db_session.query(Item).get(Item.id==item_id) if item.created_by == leader_id: rconn.lrem(item_id, i - removed_count, leader_id) removed_count += 1 print '%d items removed from feed %s' % (removed_count, feed)