此交涉及这样的: 添加行动态地内联在Django管理

有一种方法才达到增加内联表单集WITHOUT使用JavaScript?显然,将有一个页面刷新参与。

因此,如果形式有一个名为“添加”按钮...

我想我能做到这一点是这样的:

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

哪些我认为将每次加1,然后填充与柱数据的形式。然而,似乎是,额外= 1不加1后的内容

有帮助吗?

解决方案

得到它。

有时它是最简单的解决方案。只是使request.POST数据的副本,并修改TOTAL-FORMS。

例如..

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')

然后,只需吐出的形式出为正常。使您的数据,增加了一个行内编辑器。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top