Domyślna struktura generowana przez metodę django.forms.Form.as_table
pozostawia nieco do życzenia. Stąd nieco wygodniejsza i nieinwazyjna wersja w postaci filtra (zastanawiam się, czemu ta wbudowana w Django ma postać metody):
from django.template.loader import render_to_string
@register.filter
def as_table(form):
return render_to_string('form_as_table.html', {'form': form})
Do kompletu przykładowy szablon: