作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我可以通过执行以下操作来查询一种内容类型模式:
LogEntry.objects.filter(content_type__model='foo')
但是如果我想要所有具有 content_type 模型 foo
和 bar
的 LogEntry 对象怎么办?
我试过了
models_i_want = ['foo', 'bar']
LogEntry.objects.filter(content_type__model_in=models_i_want)
但是失败了,如下所示:
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/opt/sfo/sfo/env/lib/python2.7/site-packages/django/db/models/manager.py", line 85, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/opt/sfo/sfo/env/lib/python2.7/site-packages/django/db/models/query.py", line 781, in filter
return self._filter_or_exclude(False, *args, **kwargs)
File "/opt/sfo/sfo/env/lib/python2.7/site-packages/django/db/models/query.py", line 799, in _filter_or_exclude
clone.query.add_q(Q(*args, **kwargs))
File "/opt/sfo/sfo/env/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1260, in add_q
clause, _ = self._add_q(q_object, self.used_aliases)
File "/opt/sfo/sfo/env/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1286, in _add_q
allow_joins=allow_joins, split_subq=split_subq,
File "/opt/sfo/sfo/env/lib/python2.7/site-packages/django/db/models/sql/query.py", line 1211, in build_filter
raise FieldError('Related Field got invalid lookup: {}'.format(lookups[0]))
FieldError: Related Field got invalid lookup: model_in
谢谢
最佳答案
你已经非常接近了,你只需要使用双下划线,如下所示:
models_i_want = ['foo', 'bar']
LogEntry.objects.filter(content_type__model__in=models_i_want)
# ^ this is the added _
参见Django QuerySet docs对于中
关于python - 如何从 Django LogEntry 查询多个 content_type 模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52881957/
我是一名优秀的程序员,十分优秀!