Django Authentication Form Customize, Doubles Field

Цель - настроить форму, затем передать ее в LoginView. Я использую AuthenticationForm после ее настройки, но я вижу, что она повторяет лишний один вход, Я предполагаю, что это для имени пользователя, мне нужно только два входа, E-Mail и пароль. Посоветуйте что-нибудь.

Формы:

class AccountSignInForm(AuthenticationForm):
   email = forms.EmailField(widget=forms.EmailInput(attrs={'placeholder': 'E-Mail..'}), label='E-Mail')
   password = forms.CharField(widget=forms.PasswordInput(attrs={'placeholder': 'Password..'}), label='Password')

   class Meta:
       model = Account
       fields = ['email', 'password']

Просмотров:

class AccountLoginView(LoginView):
   template_name = 'accounts/login.html'
   form_class = AccountSignInForm
   success_url = 'HomePageView'

УРЛЫ:

app_name = 'accounts'

urlpatterns = [
    path('sign-in', views.AccountLoginView.as_view(), name='login'),
]

HTML:

<h1>Login Form</h1>
<form method="POST">
    {% csrf_token %}
    {% for field in form %}
        <div>{{ field.label }}</div>
        <div>{{ field }}</div>
    {% endfor %}
    <input type="submit" value="Login" />
</form>

введите описание изображения здесь Любые идеи,.

Решено с помощью этого метода,

class ClientSignInForm(AuthenticationForm):
def __init__(self, *args, **kwargs):
    super(ClientSignInForm, self).__init__(*args, **kwargs)
    self.fields['username'].widget.attrs.update(
        {'placeholder': 'E-Mail ...', 'type': 'email', 'name': 'email', 'id': 'email'})
    self.fields['username'].label = 'E-Mail Address'
    self.fields['password'].widget.attrs.update(
        {'placeholder': 'Password ...', 'type': 'password', 'name': 'password', 'id': 'password'})
    self.fields['password'].label = 'Password'
Вернуться на верх