Ejemplo n.º 1
0
    def query_by_album_id(album_id, from_id=None, limit=config.paged, desc=True):
        q = orm.select(rv for rv in Image if rv.album_id == album_id)
        if desc:
            q = q.order_by(lambda: orm.desc(rv.created_at))
        else:
            q = q.order_by(lambda: rv.created_at)

        if from_id:
            return helpers.collect_items_from_query(q, from_id, limit, "id")

        if limit:
            return q[:limit]
        return q[:]
Ejemplo n.º 2
0
    def query_by_album_id(album_id, from_id=None, limit=config.paged, desc=True):
        q = orm.select(rv for rv in Image if rv.album_id == album_id)
        if desc:
            q = q.order_by(lambda: orm.desc(rv.created_at))
        else:
            q = q.order_by(lambda: rv.created_at)

        if from_id:
            return helpers.collect_items_from_query(q, from_id, limit, 'id')

        if limit:
            return q[:limit]
        return q[:]
Ejemplo n.º 3
0
    def get_timeline(self, page=1, from_id=None, count=config.paged):
        user_ids = self.followed_user_ids[:] or [0]
        user_ids.append(self.id)
        if not from_id:
            tweets = (orm.select(rv for rv in collipa.models.Tweet if rv.user_id in user_ids)
                      .order_by(lambda: orm.desc(rv.created_at))
                      [(page - 1) * config.paged: page * config.paged])
            return tweets
        all_ids_q = orm.select(rv.id for rv in collipa.models.Tweet if
                               rv.user_id in user_ids).order_by(lambda: orm.desc(rv.created_at))

        tweet_ids = collect_items_from_query(all_ids_q, from_id, count)

        return orm.select(rv for rv in collipa.models.Tweet if rv.id in tweet_ids)[:][::-1]