Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将其他必填字段添加到Django';s";用户添加";管理页面?_Django_Django Admin - Fatal编程技术网

如何将其他必填字段添加到Django';s";用户添加";管理页面?

如何将其他必填字段添加到Django';s";用户添加";管理页面?,django,django-admin,Django,Django Admin,在向Django应用程序添加新用户时,我希望确保管理页面要求管理员包含“电子邮件”字段 我尝试过修补UserAdminForm对象,但到目前为止我还是空的。有什么提示吗?您需要在项目的admin.py文件中添加类似的内容: from django.contrib import admin from django.contrib.auth.admin import UserAdmin from django.contrib.auth.forms import UserCreationForm, U

在向Django应用程序添加新用户时,我希望确保管理页面要求管理员包含“电子邮件”字段


我尝试过修补UserAdminForm对象,但到目前为止我还是空的。有什么提示吗?

您需要在项目的admin.py文件中添加类似的内容:

from django.contrib import admin from django.contrib.auth.admin import UserAdmin from django.contrib.auth.forms import UserCreationForm, UserChangeForm from django.contrib.auth.models import Group, User # Override username field require email address class UserCreationForm2(UserCreationForm): email = forms.CharField(max_length=75, required=True) class UserChangeForm2(UserChangeForm): email = forms.CharField(max_length=75, required=True) class UserAdmin2(UserAdmin): form = UserChangeForm2 add_form = UserCreationForm2 admin.site.unregister(User) admin.site.register(User, UserAdmin2) 从django.contrib导入管理 从django.contrib.auth.admin导入UserAdmin 从django.contrib.auth.forms导入UserCreationForm、UserChangeForm 从django.contrib.auth.models导入组,用户 #覆盖用户名字段需要电子邮件地址 类UserCreationForm2(UserCreationForm): email=forms.CharField(最大长度=75,必填=True) 类UserChangeForm2(UserChangeForm): email=forms.CharField(最大长度=75,必填=True) 类UserAdmin2(UserAdmin): form=UserChangeForm2 add_form=UserCreationForm2 管理员.站点.注销(用户) admin.site.register(用户,UserAdmin2) 本质上,将email字段设为必需字段,取消注册内置管理员,并使用覆盖注册新管理员