Django: Agregar filas de formset en línea sin javascript

Esta publicación se relaciona con esto: Agregar fila a inlines dinámicamente en django admin

¿Hay alguna manera de lograr agregar conjuntos de formularios en línea SIN usar javascript? Obviamente, habría una actualización de página involucrada.

Entonces, si el formulario tuviera un botón llamado ‘agregar’ …

Pensé que podría hacerlo así:

if request.method=='POST': if 'add' in request.POST: PrimaryFunctionFormSet = inlineformset_factory(Position,Function,extra=1) prims = PrimaryFunctionFormSet(request.POST) 

Lo que pensé que agregaría 1 cada vez, luego llenaría el formulario con los datos de la publicación. Sin embargo, parece que el extra = 1 no agrega 1 a los datos de la publicación.

Lo tengo.

A veces es la solución más sencilla. Simplemente haga una copia de los datos de solicitud.POST y modifique los TOTAL-FORMS.

por ejemplo..

 if request.method=='POST': PrimaryFunctionFormSet = inlineformset_factory(Position,Function) if 'add' in request.POST: cp = request.POST.copy() cp['prim-TOTAL_FORMS'] = int(cp['prim-TOTAL_FORMS'])+ 1 prims = PrimaryFunctionFormSet(cp,prefix='prim') 

Luego simplemente escupe la forma como de costumbre. Mantiene tus datos, agrega un editor en línea.