如何将多个用户帖子合并为一个Feed?

时间:2012-07-11 19:27:16

标签: sql django feed user-input

我正在使用Django和Python(但我不认为这是相关的;我只是想知道如何做到这一点),我想知道如何将来自个人用户的帖子组合成一个提要。例如,用户a正在“关注”(订阅)人bcd。还有其他用户,例如e,其中a人没有关注。其他用户(例如bc)也可以关注其他用户。用户不能关注任何人,某些人或所有人。

我想按照日期顺序选择用户a所关注的所有帖子。所有帖子都存储在名为user_post的PostgreSQL表中,其中包含iduser_idcontenttime列。

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

1 个答案:

答案 0 :(得分:0)

您可以使用in lookup轻松完成此操作。 您只需要获取被跟踪用户的ID,然后查询这些用户作为作者的所有帖子。考虑到我不了解你的模型方案,这里有一些粗略的代码。

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