你如何限制 django admin 中的内联表单集?
问题:
我有一个与 B 有 1 到 n 关系的表 A。表 A 应该至少有一个表 B 项目和最多 5 个表 B 项目。
你如何限制 django admin 中的内联表单集?
问题:
我有一个与 B 有 1 到 n 关系的表 A。表 A 应该至少有一个表 B 项目和最多 5 个表 B 项目。
http://docs.djangoproject.com/en/dev/ref/contrib/admin/#inlinemodeladmin-options
max_num
在您的定义中指定Inline
以限制数量。
extra
指定要显示多少个空白行。
1 内联是必需的吗?如果表 B 未填充至少 1 行,您想触发验证错误吗?
通过_has_add_permission
方法管理内联中添加按钮的启用/禁用
你可以添加到你的内联类:
def _has_add_permission(self, request, obj=None):
# add/remove possibility to add a line to an inline
if obj.table_b_items.count() < 5:
return True
else:
return False