0
获取列表
考虑下面的Django代码如何从一个查询集在Django
phonenumbers = othermodel.objects.filter(company=mymodel.company,
date_overwritten__isnull=True
).values_list('id', flat=True)
这将返回另一个QuerySet对象,而不是一个Python列表,在返回的查询集的第一个对象是{valuesListQuerySet}这是一个空列表,这是正确的,因为我的整个模型/表othermodel目前是空的
我在想什么?我如何得到公正的{} valuesListQuerySet作为一个正常的Python列表,即使其空
https://docs.djangoproject.com/en/dev/ref/models/querysets/#when-querysets-are-evaluated – 2014-12-04 11:44:20
为什么你需要它作为一个列表,具体是什么?如何编写惯用Python的一部分是依靠鸭子打字;查询集几乎支持列表的所有功能。有时你需要明确转换,但这当然不是问题。 – 2014-12-04 11:46:14
我在另一个查询中使用结果newquery.message_set.exclude(originator = phonenumbers)然后会发生什么是newquery继承并追加phonenumbers查询,但是当我查看串联时,它有一个SELECT U0。“originator”now U0似乎是系统生成的,它把整个事情搞乱 – 2014-12-04 12:01:38