我有两张桌子
class ItemFollowers(models.Model):
item = models.ForeignKey(Items, models.DO_NOTHING, db_column='item')
user = models.ForeignKey(AuthUser, models.DO_NOTHING, db_column='user')
另一个是
class UsrPosts(models.Model):
item = models.ForeignKey('Items', models.DO_NOTHING, db_column='item')
# Some other fields
如何选择与UsrPosts
相关的items
后跟一些user
?即我可以在ItemFollowers
喜欢(item0,user0),(item1,user0),(item5,user0)。我需要根据用户(aka。UsrPosts
)
request.user.id
这是获取UsrPostts
itms = ItemFollowers.objects.filter(user_id=request.user.id)
qry = Q(item_id=itms[0].item.id) | ..... | Q(item_id=itms[N].item.id)
posts = UsrPosts.objects.filter(qry)
在一次交易中是否有一些过滤魔法?
答案 0 :(得分:1)
itms = ItemFollowers.objects.filter(user_id=request.user.id).values_list('item')
posts = UsrPosts.objects.filter(item__in = itms)