Id_username отображается в форме django без причины
Я ищу помощи с моей пользовательской моделью пользователя. По непонятной мне причине поле id_username
всплывает после нажатия на кнопку submit.
Это поле отсутствует в форме, которую я сократил до {{ form.as_ p }}
в html.
urls.py
path('login/', LoginView.as_view(template_name="registration/login.html"), name='login'),
forms.py
class LoginForm(forms.Form):
email = forms.EmailField(label='Email', widget=forms.TextInput(attrs={'placeholder': 'Email'}))
password = forms.CharField(widget=forms.PasswordInput(attrs={'placeholder': 'Password'}))
views.py
class LoginView(FormView):
form_class = LoginForm
success_url = '/about/'
template_name = 'registration/login.html'
def form_valid(self, form):
request = self.request
next_ = request.GET.get('next')
next_post = request.POST.get('next')
redirect_path = next_ or next_post or None
email = form.cleaned_data.get("email")
password = form.cleaned_data.get("password")
user = authenticate(request, username=email, password=password)
if user is not None:
login(request, user)
try:
del request.session['guest_email_id']
except:
pass
if is_safe_url(redirect_path, request.get_host()):
return redirect(redirect_path)
else:
return redirect("/about/")
return super(LoginView, self).form_invalid(form)
models.py
class User(AbstractBaseUser):
email = models.EmailField(
verbose_name='email address',
max_length=255,
unique=True,
help_text='Email Address'
)
active = models.BooleanField(default=True)
staff = models.BooleanField(default=False) # a admin user; non super-user
admin = models.BooleanField(default=False) # a superuser
timestamp = models.DateTimeField(auto_now_add=True)
USERNAME_FIELD = "email"
REQUIRED_FIELDS = [] # Email & Password are required by default.
objects = UserManager()
def get_full_name(self):
# The user is identified by their email address
return self.email
... etc ...
@property
def is_active(self):
"Is the user active?"
return self.active
objects = UserManager()
Визуально можно проследить, что я нажимаю login на accounts/login, где можно увидеть id_email
и id_password
. По нажатию следует ошибка формы и появление id_username
из глубин ада.
Может ли кто-нибудь объяснить мне, почему это может происходить? Это сводит меня с ума.