Подтвердить что ты не робот

Удаление ярлыков в хрустящих формах Django

Кто-нибудь знает, есть ли способ удалить ярлыки в хрустящей форме?

Я дошел до этого:

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

Но это не очень приятное решение.

4b9b3361

Ответ 1

Вы можете отредактировать шаблон field.html: https://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

Ответ 2

Просто выполните:

self.helper.form_show_labels = False

Чтобы удалить все метки.

Ответ 3

если вам нужно только удалить некоторые метки из ввода, а затем явно не указывать имя метки в определении модели, то есть:

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

Ответ 4

Работает с Boostrap (см. документацию)

В вашей форме:

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>