Добавление виджетов в форму django не обновляет формы
У меня есть форма входа в систему, для которой я пытаюсь отредактировать атрибуты css. Однако я не могу найти правильное решение. Ниже приведены мои views.py, forms.py и html сниппет соответственно.
def index(request):
context = {}
if request.method == 'POST':
form = LoginForm(data=request.POST)
context['form'] = form
logging.debug(form.is_valid())
logging.debug(form.cleaned_data)
logging.debug(form.errors)
if form.is_valid():
logging.debug("form valid")
username = form.cleaned_data.get('username')
password = form.cleaned_data.get('password')
if authenticate(username, password):
logging.debug("logged IN")
messages.success(request, f' welcome {username} !!')
return redirect('loggedIn')
else:
logging.debug("wrong!")
messages.info(request, f'Password or Username is wrong. Please try again.')
form = AuthenticationForm()
return render(request, "index_logged_out.html", {"form": form})
class LoginForm(forms.ModelForm):
class Meta:
model = WebsiteRegistrant
fields = ['username', 'password',]
widgets = {
'username': TextInput(attrs={
'class': "form-control",
'style': 'max-width: 300px;',
'placeholder': 'Username'
}),
'password': PasswordInput(attrs={
'class': "form-control",
'style': 'max-width: 300px;',
'placeholder': 'Password'
})
}
<form method="POST">
{% csrf_token %}
<center>
<div class="form-group" style = "margin-bottom: 10px; width: 300px">
{{ form.password }}
</div>
<div class="form-group" style = "margin-bottom: 10px; width: 300px">
{{ form.password }}
</div>
<button class="btn btn-primary btn-block fa-lg gradient-custom-2 mb-3" type="submit" style="width: 300px;">Login</button>
</center>
</form>
Есть идеи, что я делаю неправильно или что я могу исправить, чтобы добавить имя класса и атрибуты, как я определил в виджете формы?
Спасибо