次のコードでユーザーモデルを上書きしようとしますが、ユーザー名のmax_lengthとmin_lengthを上書きできません。Djangoのユーザー名の最大長/最小長をModelFormで上書きする
具体的には、python manage.py shell
でチェックすると上書きされます。しかし、レンダリングされたhtmlには何の効果もないようです(username maxlengthはまだ150です)。
どのパーツが間違っているのかわからないので、助けてください。
from django import forms
from django.contrib.auth.models import User
class RegistrationForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(RegistrationForm, self).__init__(*args, **kwargs)
email = self.fields['email']
username = self.fields['username']
email.required = True
email.label_suffix = ' '
username.label_suffix = ' '
######### this is not work!!!###############
username.min_length = 6
username.max_length = 30
############################################
class Meta:
model = User
fields = ('username', 'email')
labels = {
'username': '帳號',
}
help_texts = {
'username': '',
}
私が利用可能になったときにチェックします。 – JianWei