【发布时间】:2021-10-13 16:11:22
【问题描述】:
我想用 bootstrap 5 创建 django 登录表单。如何确保表单有效?我可以在模板中使用引导程序设置 raise validationError 的样式吗?
这是我的代码:
forms.py
class LoginForm(forms.Form):
username = forms.CharField()
password = forms.CharField()
def clean(self):
username = self.cleaned_data.get("username")
password = self.cleaned_data.get("password")
# Check if user and password is matching and exists
user = authenticate(username=username, password=password)
if not user:
raise forms.ValidationError("This is an invalid user.")
login_page.html
<form method="POST" class="row g-3 needs-validation" novalidate>
{% csrf_token %}
<input type="text" name="username" class="form-control" placeholder="Username" required>
<div class="invalid-feedback">{{ #raise ValidationError here }}</div>
<input type="password" name="password" class="form-control" placeholder="Password" required>
<div class="invalid-feedback">{{ #raise ValidationError here }}</div>
<input class="btn btn-primary" type="submit" value="Login">
我可以这样做吗?还是有更好的解决方案来创建登录表单验证? 谢谢。
【问题讨论】:
标签: django validation django-forms bootstrap-5