首页 > 解决方案 > 如何从列表中的 QuerySet 中过滤对象

问题描述

我正在尝试使用django-friendship包来向我的用户发送 Friend 请求。当我使用时:Friend.objects.requests(user=request.user)它返回一个以request.user如下形式发送请求的用户的 id 列表:

[<FriendshipRequest: 14>, <FriendshipRequest: 15>, <FriendshipRequest: 16>, <FriendshipRequest: 18>]这是 FriendshipRequest 对象的查询集列表request.user

我打算使用id__in它来检索向我的用户发送好友请求的用户,但是,我无法使用它,因为我收到以下错误:

TypeError: Field 'id' expected a number but got <FriendshipRequest: 14>.

这是我的完整代码:

requests = Friend.objects.requests(user=request.user)
friend_requests = Profile.objects.filter(id__in=requests)  

我怎样才能做到这一点?

提前致谢!

标签: djangodjango-modelsdjango-formsdjango-views

解决方案


推荐阅读