我之前只接触过ModelForm,所以这是我第一次使用Form。 我想从表单中删除标签,但是,如何删除 ModelForm 中的标签似乎不适用于 Form。
这是我的代码:
forms.py
class UserLoginForm(forms.Form):
email = forms.CharField(max_length=255)
password = forms.CharField(max_length=255)
labels = {
'email': '',
'password': ''
}
widgets = {
'email': forms.TextInput(attrs={'class': 'login_input', 'placeholder': 'Email'}),
'password': forms.PasswordInput(attrs={'class': 'login_input', 'placeholder': 'Password'})
}
这看起来是一个简单的问题,但事实证明我无法从 django 官方文档或 Google 中得到我想要的东西。如果您能帮我解决问题,我将不胜感激。
正如上面评论中提到的@Carcigenicate,您可以直接使用
{{form.email}}
,它只会渲染输入标签而不是标签标签。
要删除标签,您应该使用内联标签而不是标签字典,因为它们是在
Meta
类中定义的,所以:
class UserLoginForm(forms.Form):
email = forms.CharField(max_length=255, label="")
password = forms.CharField(max_length=255, label="")
您还可以定义内联
widegts
。
然后您可以使用
{{form}}
并且不会在模板中看到标签。
不确定这是否是您正在寻找的,但这就是我所做的:
class MyForm(forms.Form):
template_name_label = None