2012-07-11 75 views
0

我在Python中使用Django(但我不认为这是相关的;我只是需要一个如何做到这一点的想法),我想知道如何将单个用户的帖子合并到一个feed中。例如,用户a是'follow'(订阅)人b,cd。还有其他用户,如e,其中a未在其中。其他用户,如bc也可以跟随其他用户。用户可以追踪任何人,某些人或所有人。如何将多个用户帖子合并为一个Feed?

我想选择人民用户a以下的所有帖子,按日期排序。所有帖子都存储在一个名为user_post的PostgreSQL表中,其列id,user_id,contenttime

有什么办法可以有效地做到这一点?我知道像Twitter,tumblr和Facebook这样的网站可以做到这一点。我不是在寻找一个Python特定的例子。

回答

0

你可以用in lookup很容易地做到这一点。 您只需要获取所关注用户的ID,然后查询这些用户作为作者的所有帖子。下面是一些粗略的代码,考虑到我不知道你的模型方案。

following = active_user.following_set.all().values_list('id', flat=True) 
posts = Post.objects.filter(author__in=following)