如何删除 Django 生成的表单中的标签文本?

新手上路,请多包涵

我有一个表格,它只对我不想要的标签文本显示良好,我已经尽我所能让它脱离我的表格,但它不会消失……

表格.py

 class sign_up_form(forms.ModelForm):
    class Meta:
        model = Users
        fields =['email']
        widgets = {
            'email': forms.EmailInput(attrs={
                'id': 'email',
                'class': 'form-control input-lg emailAddress',
                'name': 'email',
                'placeholder': 'Enter a valid email'})}

我试过: views.py

 from django.shortcuts import render
from mysite.forms import sign_up_form

def register(request):
    sign_up = sign_up_form(auto_id=False)
    context = {'sign_up_form': sign_up}
    return render(request, 'mysite/register.html', context)

我需要我的 widgets 如上所述。

原文由 Yax 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 440
1 个回答

在 ModelForms 中会有默认标签,因此您必须覆盖不需要标签的地方

你可以这样定义它

class sign_up_form(forms.ModelForm):
    email = forms.CharField(widget=forms.Textarea, label='')
    class Meta:
        model = Users
        fields =['email']

此方法将不包括您表单的标签,其他方法取决于模板中的呈现。您始终可以避免使用表单中的标签 <label>MY LABEL</label> 而不是 {{ form.field.label }}

原文由 Nitish Kansal 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题