【发布时间】:2015-09-29 00:08:21
【问题描述】:
我有自己的 Auth User 模型,它继承自 PermissionsMixin。当我访问该模型的任何实例的 django-admin 页面时,我得到了很多数据库查询(因为我有很多权限)。问题出在这里,django/contrib/auth/models.py:
class Permission(models.Model):
[...]
def __str__(self):
return "%s | %s | %s" % (
six.text_type(self.content_type.app_label),
six.text_type(self.content_type),
six.text_type(self.name))
每次在管理页面上显示权限时,都会查询其 content_type。
问题是:我能否确保对于涉及我的身份验证用户模型的每个查询,特别是对于不是来自我的代码(如 django 管理员)的查询,都将针对权限及其 content_types 运行 prefetch_related?
【问题讨论】:
标签: django django-models django-admin