django - How to query Django LogEntry by content_type name?
问题描述
I would like to query Django admin's LogEntry records by content_type.name. I have tried this:
from django.contrib.admin.models import LogEntry
logs = LogEntry.objects.filter(content_type__name='foo')
But this results in the error trace of:
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/opt/sf/sf/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/sf/sf/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/sf/sf/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/sf/sf/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/sf/sf/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/sf/sf/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: name
I can do this ...
logs = LogEntry.objects.filter(content_type=102)
logs.all()[0].content_type.name
u'foo'
... so how can I get all the content_type objects that have the name foo
?
解决方案
ContentType 由 id(integer)、app_label(char) 和 model(char) 三列组成
在这种情况下,您可能想要
LogEntry.objects.filter(content_type__model='foo')
推荐阅读
- python - 如果语句在基于文本的冒险游戏中不起作用。百思不得其解
- linux - Linux / GCC 是否支持文件共享允许-拒绝类型?
- ios - 无法同时满足从 ios 13 中的 nib 加载的 tableview 单元格的约束
- javascript - 带有 Turbolinks 的 Rails Bootstrap 4
- java - JSlider 类似于 Android Studio 中的 Java
- c++ - 模板函数中的 C++ 动态内存分配
- python - Python - 制作一个更改 Django 设置的脚本
- java - How to return a list of strings in Java?
- java - While 循环编码模式
- styled-components - Styled-Component / Emotion.js 对象样式或模板样式是否更受青睐?