【发布时间】:2021-04-15 00:41:43
【问题描述】:
我在 Django 中使用普通用户模型来保存我的用户。我想添加 first_name 和 last_name 字段,但我不知道如何扩展我的模型并使其工作。名字和姓氏应该在注册表中添加(我使用脆表)。
注册视图
if request.method == "POST":
form = UserRegisterForm(request.POST)
if form.is_valid():
form.save() # save user to database
username = form.cleaned_data.get('username')
messages.success(request, f"User {username} succesfully created! You can login now!")
return redirect('login')
else:
form = UserRegisterForm()
return render(request, 'users/register.html', {'form': form})
注册表
def __init__(self, *args, **kwargs):
super(UserRegisterForm, self).__init__(*args, **kwargs)
self.fields['password1'].label = "Hasło"
self.fields['password2'].label = "Powtórz hasło"
email = forms.EmailField()
name = forms.CharField(
label="Imię",
required=True,
max_length=30,
)
surname = forms.CharField(
label="Nazwisko",
required=True,
max_length=30,
)
class Meta:
model = User
fields = ['username', 'email', 'password1', 'password2', 'name', 'surname']
labels = {
'username': 'Nazwa użytkownika',
}
【问题讨论】:
-
Django 的
User模型已经有first_name和last_namee。
标签: python django forms django-crispy-forms