from django.contrib.auth.models import AbstractUser
class User(AbstractUser):
pass
还有settings.py文件
AUTH_USER_MODEL = 'myapp.MyUser'
还有 admin.py
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from .models import User
admin.site.register(User, UserAdmin)
Django文档指出应该在ForeignKeys和OnetoOneField中使用settings.AUTH_USER_MODEL代替user,但对于其他情况不太清楚。
我的问题是关于如何在views.py中引用自定义用户类。在定义用户类之前,我使用的是
from django.contrib.auth.models import User
但是在定义了自定义类之后,情况就不再正确了。我已经看到有些样板代码在views.py的开头使用这种方法:
from django.contrib.auth import get_user_model
User = get_user_model()
这是引用自定义用户的最佳实践吗?还是我应该在之前使用 User 的位置上使用 settings.AUTH_USER_MODEL ?