首页 > 解决方案 > django 中的 Ovveride UserCreationForm 错误消息

问题描述

嗨,我扩展了 UserCreationForm表单,我的新表单如下:

class create_user_form(UserCreationForm):
email=forms.EmailField(label='ایمیل',widget=forms.EmailInput(attrs={'class':'form-control','placeholder':'user@mail.com',}))
# username=forms.CharField(error_messages={'username': 'Please let us know what to call you!'},label='نام کاربری',widget=forms.TextInput(attrs={'class':'form-control','placeholder':'مثال : Mohammad',}))
first_name=forms.CharField(label='نام',widget=forms.TextInput(attrs={'class':'form-control','placeholder':'نام واقعی',}))
last_name=forms.CharField(label='فامیلی',widget=forms.TextInput(attrs={'class':'form-control','placeholder':'فامیلی واقعی',}))
class Meta:
    model=User
    fields=['username','email','first_name','last_name']


def __init__(self,*args,**kwargs):
    super(UserCreationForm,self).__init__(*args,**kwargs)
    self.fields['username'].widget.attrs['class']='form-control'
    self.fields['username'].label='نام کاربری'
    self.fields['username'].help_text=''
    self.fields['password1'].widget.attrs['class']='form-control'
    self.fields['password2'].widget.attrs['class']='form-control'
    self.fields['password1'].label='رمز عبور'
    self.fields['password2'].label='تایید پسورد'
    self.fields['password1'].help_text=''
    self.fields['password2'].help_text=''

因此,我将表单输入的标签和 help_text 转换为我自己的语言但我找不到一种方法来忽略提交表单时出现的错误消息

我也试过

    username=forms.CharField(error_messages={'username': 'Please let us know what to call you!'},label='نام کاربری',widget=forms.TextInput(attrs={'class':'form-control','placeholder':'مثال : Mohammad',}))

但它不起作用

您能帮我更改表单的错误消息吗?

标签: pythondjangoformsauthenticationdjango-models

解决方案


推荐阅读