我有一个表单,允许您选择要过滤的多个项目类型.例如,假设您有项目类型"研究","培训"和"评估".
基本上我要做的是使用Q对象构建一个查询集,如:
projects.filter(Q(type__type="Research") | Q(type__type="Training"))
Run Code Online (Sandbox Code Playgroud)
我只是不确定如何在没有filter()输入为字符串的情况下构建它,这会产生错误:
querystring = ""
for t in types:
querystring += " | Q(type__type="+t+")"
projects.filter(querystring) ## produces error: "ValueError: too many values to unpack"
Run Code Online (Sandbox Code Playgroud)
那么,什么是迭代类型以创建具有Q对象的查询集的方法?