我在Django中使用内联表单集,并为每个显示一个“额外”表单的项目添加另一个对象 .
现有对象的表单具有“删除”复选框,用于删除该对象,这是有意义的 .
但是“额外”形式也有这些“删除”复选框......这没有任何意义,因为没有什么可以删除 . Django管理员中的内联表单不显示“额外”表单的这些“删除”复选框 .
如何删除“额外”内联表单上的这些复选框?
我的模板的内联formset部分是这样的(简化版,完整版here):
{% for bookimage_form in form.forms %}
{% for hidden_field in bookimage_form.hidden_fields %}
{{ hidden_field.errors }}
{% endfor %}
{{ bookimage_form.as_table }}
{% endfor %}
这是“删除”复选框,似乎是多余的:
3 回答
您可以使用
InlineModelAdmin
类的can_delete设置(TabularInline
继承自InlineModelAdmin
):当你循环遍历表单时,这是一种在模板中到达的方法:
你将无法使用't think, though. You'方法,我必须在表格中表达其他所有字段 .
在初始化表单之后,在进入上下文之前,您可以尝试另一件事:
不知道表格中会出现这种情况,但你可能会想到这个想法 .
我的建议是在嵌套for循环中渲染模板并添加: