2012-07-13 114 views
12

有谁知道是否有正确的方式去除脆皮形式的标签?以Django脆皮形式去除标签

我得到尽可能的:

self.fields['field'].label = "" 

但它不是一个非常好的解决方案。

回答

5

您可以编辑该模板field.htmlhttps://github.com/maraujop/django-crispy-forms/blob/dev/crispy_forms/templates/bootstrap/field.html#L7

添加FormHelper属性表单控制标签渲染和在该模板if使用它。自FormHelper属性还没有正式记录在案,因为我没有时间,但我在一个演讲我给谈到他们,这里有幻灯片: https://speakerdeck.com/u/maraujop/p/django-crispy-forms

+0

感谢,虐待检查出来... – Ron 2012-07-18 10:27:48

4

如果你只从输入删除一些标签,然后明确不给模型定义标签名称,即:

field = models.IntegerField("",null=True) 
27

只要做到:

self.helper.form_show_labels = False 

要删除所有标签。

+0

因此未为我工作。 – doniyor 2014-11-01 20:35:21

+0

它工作在'1.5.2',尝试升级 – Mark 2015-11-06 23:19:12

+0

隐藏复选框和单选按钮的标签:( – CpILL 2016-10-14 14:44:29

4

工程与自举(see documentation

在您的形式:

from crispy_forms.helper import FormHelper 
from django import forms 

class MyForm(forms.Form): 
    [...] 
    def __init__(self, *args, **kwargs): 
     super(MyForm, self).__init__(*args, **kwargs) 
     self.helper = FormHelper() 
     self.helper.form_show_labels = False 

在模板:

<form method='POST' action=''>{% csrf_token %} 
{% crispy form %} 
<input type='submit' value='Submit' class='btn btn-default'> 
</form>