添加不带JavaScript的内联表单集

nlr25

我使用这篇文章作为参考:Django:添加没有JavaScript的内联表单集行

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

我试图在不使用javascript的情况下添加内联行,并且遇到了一些我在上面引用的实现中不了解的事情。

  1. 您如何在表单,视图或模板中获得一个名为“添加”的按钮?
  2. “ prims”以以下形式定义,但未定义“ prim-TOTAL_FORMS”。您是否需要在某处定义“ prim-TOTAL_FORMS”?
  3. 在定义“ prim”之前如何称呼“ prim-TOTAL_FORMS”?
  4. 这是否全部写在views.py中?

感谢您的帮助,如果问题是新手,则对不起!

但丁教授

a)添加一个带有您想要的名称和值的按钮,它将作为POST数据提交,其中POST中的键为名称,而值为该值。

<input type="submit" value="true" name="add">

此处阅读Django中的HTTPRequest对象

b)否。该示例使用inlineformset_factory。这会使用给定的前缀“ prim”在发布时为您设置TOTAL_FORMS值。他们正在获取当前TOTAL_FORMS计数的副本,并将其加1,然后返回新的表单集。

c)prim是在初始表单集中定义的,并且您要确保返回的前缀相同。如果提交表单,则使用此代码,因此您知道将'prim'设置为前缀。

d)是的!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章