13
有可能在这种方式限制查询集:Django'objects.filter()'与列表?
creators_list = ['jane', 'tarzan', 'chita']
my_model.objects.filter(creator=creators_list)
???
有可能在这种方式限制查询集:Django'objects.filter()'与列表?
creators_list = ['jane', 'tarzan', 'chita']
my_model.objects.filter(creator=creators_list)
???
您的意思是?
my_model.objects.filter(creator__in=creator_list)
文档:http://docs.djangoproject.com/en/dev/ref/models/querysets/#in
编辑
现在这是一个有点过时。如果您遇到与原代码的问题,试试这个:
from django.db.models import Q
my_filter_qs = Q()
for creator in creator_list:
my_filter_qs = my_filter_qs | Q(creator=creator)
my_model.objects.filter(my_filter_qs)
有可能是一个更好的方式来做到这一点,但我不能在此刻进行测试。
当然假设创建者字段是某种CharField – 2011-05-10 21:00:41
Greate man。让宇宙祝福你:) – krzyhub 2011-05-10 21:02:21
如果它适用于你,随时打开接受。 – 2011-05-10 21:03:21