尝试结合 Django inline-formset、django-select2 和 django-dynamic-formset
Trying to combine Django inline-formset, django-select2 and django-dynamic-formset
我试图将标题中提到的所有内容与总有遗漏的内容结合起来。我已经浏览了我能找到的所有可能的帖子,但仍然不确定该怎么做。
所以我基本上有两个型号,分别是master-detail。当我使用普通的 django 东西时 - 一切都很好,但在详细模型中我有超过 10000 个元素,经典的 select 字段无法使用。所以我通过django-select2模块切换到select2。我以某种方式设法将所有内容放在一起,但是如果我需要超过三个 django 默认呈现的行,则必须添加 django-dynamic-formset 才能动态添加新行。同样,我设法使一切正常,在将所有东西放在一起时遇到了一些问题,但现在我遇到了两个问题。
如果我在 jquery.formset.js 中留下这段代码:
insertDeleteLink(row);
我会收到这条消息:
jquery.formset.js:67 Uncaught ReferenceError: deleteButtonHTML is not defined
at insertDeleteLink (jquery.formset.js:67)
at HTMLTableRowElement.<anonymous> (jquery.formset.js:146)
at Function.each (jquery-2.2.4.min.js:2)
at n.fn.init.each (jquery-2.2.4.min.js:2)
at n.fn.init.$.fn.formset (jquery.formset.js:124)
at HTMLDocument.<anonymous> (1:92)
at i (jquery-2.2.4.min.js:2)
at Object.fireWith [as resolveWith] (jquery-2.2.4.min.js:2)
at Function.ready (jquery-2.2.4.min.js:2)
at HTMLDocument.J (jquery-2.2.4.min.js:2)
如果我删除它,则不会生成行的删除链接,即使我的模板中有
<td>{% if form.instance.id %}{{ form.DELETE }}{% endif %}</td>
所以,我以 half-solution 结尾,我可以添加行,我可以填充它们,select2 最终按预期工作,但我不能删除行,而不是在我创建新项目和当我删除旧的时不是。
另一个问题是,如果 django 详细创建三行 table(按设计),而我只填充第一行,它会保存所有三行。不确定如何在保存 formset 时删除行(尝试在执行 POST 时执行 form.delete,但它不起作用)。
如果有帮助,我当然可以添加更多代码。
假设最新 jquery.formset.js 来自 github,它需要修复
'deleteButtonHTML' 到 'delButtonHTML' 到目前为止还不在常规回购中
https://github.com/Dowsley/django-dynamic-formset/commit/1a781fd6b1a7a5f6348b43097983773f0d2a69de
我试图将标题中提到的所有内容与总有遗漏的内容结合起来。我已经浏览了我能找到的所有可能的帖子,但仍然不确定该怎么做。
所以我基本上有两个型号,分别是master-detail。当我使用普通的 django 东西时 - 一切都很好,但在详细模型中我有超过 10000 个元素,经典的 select 字段无法使用。所以我通过django-select2模块切换到select2。我以某种方式设法将所有内容放在一起,但是如果我需要超过三个 django 默认呈现的行,则必须添加 django-dynamic-formset 才能动态添加新行。同样,我设法使一切正常,在将所有东西放在一起时遇到了一些问题,但现在我遇到了两个问题。
如果我在 jquery.formset.js 中留下这段代码:
insertDeleteLink(row);
我会收到这条消息:
jquery.formset.js:67 Uncaught ReferenceError: deleteButtonHTML is not defined
at insertDeleteLink (jquery.formset.js:67)
at HTMLTableRowElement.<anonymous> (jquery.formset.js:146)
at Function.each (jquery-2.2.4.min.js:2)
at n.fn.init.each (jquery-2.2.4.min.js:2)
at n.fn.init.$.fn.formset (jquery.formset.js:124)
at HTMLDocument.<anonymous> (1:92)
at i (jquery-2.2.4.min.js:2)
at Object.fireWith [as resolveWith] (jquery-2.2.4.min.js:2)
at Function.ready (jquery-2.2.4.min.js:2)
at HTMLDocument.J (jquery-2.2.4.min.js:2)
如果我删除它,则不会生成行的删除链接,即使我的模板中有
<td>{% if form.instance.id %}{{ form.DELETE }}{% endif %}</td>
所以,我以 half-solution 结尾,我可以添加行,我可以填充它们,select2 最终按预期工作,但我不能删除行,而不是在我创建新项目和当我删除旧的时不是。
另一个问题是,如果 django 详细创建三行 table(按设计),而我只填充第一行,它会保存所有三行。不确定如何在保存 formset 时删除行(尝试在执行 POST 时执行 form.delete,但它不起作用)。
如果有帮助,我当然可以添加更多代码。
假设最新 jquery.formset.js 来自 github,它需要修复 'deleteButtonHTML' 到 'delButtonHTML' 到目前为止还不在常规回购中 https://github.com/Dowsley/django-dynamic-formset/commit/1a781fd6b1a7a5f6348b43097983773f0d2a69de