我知道此问题在堆栈上很常见,我已经尝试了许多答案Like this one, and more alike。
所以我的目标是扩展用户以添加一些自定义字段。
在models.py中,我添加了以下内容
class MyUser(AbstractUser):
bio = models.TextField(max_length=500, blank=True)
location = models.CharField(max_length=30, blank=True)
birth_date = models.DateField(null=True, blank=True)
def __str__(self): # __str__ for Python 3, __unicode__ for Python 2
return self.name
class Meta:
app_label = 'app_name'
在admin.py中,我添加了以下内容:
class CustomUserAdmin(UserAdmin):
model = MyUser
filter_horizontal = ('user_permissions', 'groups',)
admin.site.register(MyUser, CustomUserAdmin)
在settings.py中,我具有以下内容:
AUTH_USER_MODEL = 'app_name.MyUser'
在urls.py中:
admin.autodiscover()
请注意,我已删除所有迁移,并在进行这些更改后重新生成了
app_name位于settings.py中的INSTALLED_APPS中
我还试图添加form.py自定义创建和更改表单,如下所示,但没有成功:
class CustomUserCreationForm(UserCreationForm):
class Meta(UserCreationForm):
model = MyUser
fields = '__all__'
class CustomUserChangeForm(UserChangeForm):
class Meta:
model = MyUser
fields = '__all__'
预先感谢您的帮助