Dur*_*and 6 python forms authentication django
我正在尝试确保auth用户模型的名字和姓氏字段不是可选的,但是我不确定如何更改它。我不能使用子类,因为必须使用身份验证系统。
我可以想到两个解决方案:1)将名称放入用户个人资料中,但是拥有一个我不能正确使用的字段有点愚蠢。2)以形式而不是模型进行验证。我认为这真的不符合django的哲学...
由于某种原因,我似乎找不到在线进行此操作的方法,因此,我们感谢您的帮助。我以为这将是一个受欢迎的问题。
干杯,杜兰德
UserCreationForm即可。first_name是last_namedjango 默认的属性User。如果您想将它们设为必填字段,请将这些字段重新创建为forms.CharField(...).现在使用您自己的用户注册表。
# Contents usersapp/forms.py
from django import forms
from django.contrib.auth.models import User
from django.contrib.auth.forms import UserCreationForm
# Inherit Django's default UserCreationForm
class UserRegisterForm(UserCreationForm):
first_name = forms.CharField(max_length=50) # Required
last_name = forms.CharField(max_length=50) # Required
# All fields you re-define here will become required fields in the form
class Meta:
model = User
fields = ['username', 'email', 'first_name', 'last_name', 'password1', 'password2']
Run Code Online (Sandbox Code Playgroud)