Ich benutze django-allauth und habe das Benutzermodell um das untenstehende Modell erweitert. Wenn ich jedoch zu accounts/signup/
gehe, dann sind die einzigen Felder, die in dem Formular angezeigt werden, diejenigen in dem Standardbenutzermodell. Benötigt allauth ein benutzerdefiniertes Anmeldeformular, um die anderen Felder anzuzeigen?django allauth erweitertes Benutzermodell - Standard-Anmeldeformular verwenden
models.py
class User(AbstractUser):
MR = 'Mr'
MRS = 'Mrs'
MISS = 'Miss'
MS = 'Ms'
DR = 'Dr'
SIR = 'Sir'
PROF = 'Prof'
REV = 'Rev'
TITLE_CHOICES = (
(MR, 'Mr'),
(MRS, 'Mrs'),
(MISS, 'Miss'),
(DR, 'Dr'),
(SIR, 'Sir'),
(PROF, 'Prof'),
(REV, 'Rev'),
)
title = models.CharField(max_length=5, null=True, choices=TITLE_CHOICES)
date_of_birth = models.DateField()
primary_phone = PhoneNumberField()
def __str__(self):
return self.username
Relevante Einstellungen:
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.ModelBackend',
'allauth.account.auth_backends.AuthenticationBackend',
)
ACCOUNT_AUTHENTICATION_METHOD = 'email'
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_SIGNUP_PASSWORD_ENTER_TWICE = False
ACCOUNT_EMAIL_VERIFICATION = 'mandatory'
ACCOUNT_ALLOW_REGISTRATION = env.bool('DJANGO_ACCOUNT_ALLOW_REGISTRATION', default=True)
ACCOUNT_FORMS = {'login': 'switcher5.users.forms.LoginForm',
# 'signup': 'switcher5.users.forms.ProfileForm',
# no longer using a onetoonefield profile model
'reset_password': 'switcher5.users.forms.ResetPasswordForm'}
ACCOUNT_ADAPTER = 'switcher5.users.adapter.AccountAdapter'
SOCIALACCOUNT_ADAPTER = 'switcher5.users.adapter.SocialAccountAdapter'
AUTH_USER_MODEL = 'users.User'