有没有办法可以传递QuerySet.values()要检索的字段列表。我有一个模型,我想在不同的场合从中检索不同的字段集。
答案 0 :(得分:19)
您可以使用*
运算符在传递给函数时将列表展开为单独的参数,如Python教程中的here所述。
>>> qs = User.objects.all()
>>> values = ['first_name', 'email']
>>> qs.values(*values)
产量
[{'first_name': u'aaaa', 'email': u'a@b.com'},
{'first_name': u'', 'email': u'abc@def.com'},
{'first_name': u'', 'email': u'abcd@gmail.com'},
'...(remaining elements truncated)...']
(为了简洁,我进一步截断了输出。)