我有一个自定义用户对象和一个继承自它的代理模型(zinnia 的作者)。奇怪的是,代理模型似乎以某种方式覆盖了管理器模型设置。像这样
class CustomUserManager(BaseUserManager):
....
class CustomUser(AbstractBaseUser, PermissionsMixin):
....
到目前为止一切正常,但是在安装了包含以下内容的 zinnia 插件(https://github.com/Fantomas42/django-blog-zinnia/)之后
class Author(get_user_model()):
"""
Proxy model around :class:`django.contrib.auth.models.get_user_model`.
"""
objects = get_user_model()._default_manager
published = EntryRelatedPublishedManager()
...
class Meta:
"""
Author's meta informations.
"""
app_label = 'zinnia'
proxy = True
之后发生以下情况: CustomUser.objects.model 指向 zinnia.models.author.Author
我猜 BaseManager.contribute_to_class(...) 中发生了一些事情。有任何想法吗?