在查看 Django auth 模型代码时,我遇到了以下代码:
class User(AbstractUser):
class Meta(AbstractUser.Meta):
swappable = 'AUTH_USER_MODEL'
很明显,这与settings.py
中的新AUTH_USER_MODEL
设置有关,但它是如何实际工作的,有什么Python“技巧”?
它还可以在哪些其他情况下使用?
在查看 Django auth 模型代码时,我遇到了以下代码:
class User(AbstractUser):
class Meta(AbstractUser.Meta):
swappable = 'AUTH_USER_MODEL'
很明显,这与settings.py
中的新AUTH_USER_MODEL
设置有关,但它是如何实际工作的,有什么Python“技巧”?
它还可以在哪些其他情况下使用?
swappable
是一个“有意不公开”的功能,目前正在开发/测试中。它用于处理“我有一个具有一些外键关系的基本抽象模型。”稍微详细的信息可以从Django的票务系统和GitHub获取。因为它是一个“秘密的alpha”功能,不能保证除了用户之外的任何功能都能正常工作,并且理解详细操作可能需要深入源代码。它与AUTH_USER_MODEL
一起工作,因为User
模型和swappable
标志是专门为彼此开发的。