Ho un django Formset che mi piacerebbe layout nel mezzo di un altro modulo. Sto usando django-crispy-forms per impostare il layout in del __init__
form padre:forme django croccanti: annidamento di un formset all'interno di un modulo
from crispy_forms.helper import FormHelper
from crispy_forms.layout import Submit, Layout, Field, Div
def __init__(self, *args, **kwargs):
self.helper = FormHelper()
self.helper.layout = Layout(
Div(
Div(Field('foo'), css_class='span3'),
Div(Field('bar'), css_class='span4'),
css_class='row'
),
Field('baz', css_class='span1'),
...
)
self.helper.add_input(Submit('submit', 'Submit', css_class='btn btn-primary offset4'))
mio modello rende semplicemente la forma utilizzando il tag {% crispy %}
.
Mi piacerebbe sapere come dovrei incorporare il formset. Dovrei istanziarlo nella funzione init di sopra? Come posso riferirmi lì?
Ci sono other examples di combinazioni di form e formset online che hanno un rendering dopo l'altro in serie, ma mi chiedo se posso avere più controllo su come si adattano insieme al layout di Crispy.
Una leggera modifica che suggerirei è di aggiungere un parametro facoltativo a Formset LayoutObject per 'formset_helper'. Funziona allo stesso modo. In questo modo puoi passare anche nell'assistente personalizzato. – Alejandro
In quali file sono inseriti questi codici? Dove inserisco formset.html? E che cos'è Formset ('educazione'); da dove viene? –