我的示例代码是:
from django.db import models
from django.contrib.auth.models import User
class Category(models.Model):
user = models.ForeignKey(User, null=True)
....
我想做一些这样的事情:
user = User.objects.none()
categories = Category.objects.filter(**filter)
for category in categories:
# my problem is here , how add user category object to queryset
# or merge object and queryset
user = user | category.user
这部分代码用于显示问题:
user = user | category.user
谢谢。
最佳答案
你不能这么做。查询集是满足查询的对象的容器,因此得名。它不是任意对象的容器。
这里正确的做法是直接查询你需要的用户。您可以使用双下划线语法来跟踪与 Category 对象的关系:
users = User.objects.filter(category__criteria=value)
关于python - 如何将对象添加到查询集中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19075128/