У меня работает настройка Django-Allauth с дополнительными полями в моей регистрационной/регистрационной форме. С обязательными полями все в порядке, но мои проблемы начинаются, когда я пытаюсь добавить некоторые ДОПОЛНИТЕЛЬНЫЕ поля в мою регистрационную форму.Django-Allauth: Необязательные поля в форме регистрации
Мой settings.py:
ACCOUNT_SIGNUP_FORM_CLASS = 'myapp.forms.RegistrationForm'
forms.py:
class RegistrationForm(forms.ModelForm):
category = forms.ChoiceField(choices=CATEGORY_CHOICES)
password1 = forms.CharField(widget=forms.PasswordInput(), label="Password")
password2 = forms.CharField(widget=forms.PasswordInput(),
label="Password (again)"
)
company = forms.CharField()
....
class Meta:
model = User
fields = ('email', 'first_name', 'last_name',)
def signup(self, request, user):
category = self.cleaned_data['category']
company = self.cleaned_data['company']
person = UserProfile(user=user, category=category,)
company=company,)
person.save()
models.py:
class UserProfile(models.Model):
...
user = models.OneToOneField(User, related_name='profile',
verbose_name=_('user'))
company = models.CharField(max_length=100, blank=True, null=True,
verbose_name=_('company'))
User.profile = property(lambda u: UserProfile.objects.get_or_create(user=u)[0]
Таким образом, поле категории является обязательным, и это нормально , Но как я могу разместить поле компании как необязательное поле?