Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
{{ form.non_field_errors }}
{% for field in form %}
<div class="f_row">
{{ field.errors }}
{{ field.label_tag }}
<div class="f_input">
{{ field }}
{% if field.help_text %}<div class="note">{{ field.help_text }}</div>{% endif %}
</div>
</div>
{% endfor %}
{% with add_post_form as form %}{% include 'form.html' %}{% endwith %}
def as_div(self):
return self._html_output(
normal_row = u'<div class="js-active forms__width %(html_class_attr)s" >\
<div class="forms__i">\
%(label)s %(field)s\
</div>\
%(help_text)s\
<div class="forms__hint">%(errors)s</div></div>',
error_row = u'%s',
row_ender = u'',
help_text_html = u'<div class="forms__hint">%s</div>',
errors_on_separate_row = False
)
forms.BaseForm.as_div = as_div
self.fields[field] выглядит как-то плохо.
for field in self.fields.values():
field.widget.attrs['class'] = 'some-class other-class'
$("form ul li.field-required label").append(' *');
Оформляем формы