【发布时间】:2017-07-06 12:22:05
【问题描述】:
我一直在查看文档和 stackoverflow/forums,以便在将模型保存在 django admin 中时忽略它的内联子项。我一直在寻找几天,我似乎无法找到答案。
我有一个普通的 tabularinline 对象:
class UserOrdersAdmin(admin.TabularInline):
model = Order
classes = ['collapse']
和一个普通的用户管理员注册:
class UserAdmin(BaseUserAdmin):
inlines = (UserOrdersAdmin, UserSettingsAdmin)
admin.site.unregister(User)
admin.site.register(User, UserAdmin)
我想要的是当我在用户“更改视图”中按保存时,它将忽略与 UserAdmin 内联的内联“UserOrderAdmin”。
【问题讨论】:
-
从问题来看,您要达到的目标并不完全清楚。但我认为您应该查看可以在 Inline 上设置的“extra”、“max_num”和“readonly_fields”字段。还可以看看其他字段:docs.djangoproject.com/en/dev/ref/contrib/admin/…
-
@jgadelange 好吧,我将所有字段都放在了 UserOrderAdmin 的 readonly_fields 中,它有效地完成了这项工作。但是它确实没有做我想要的,即只保存 Parent,因为它很可能仍在尝试同时保存 UserOrder。我希望有一些简单的方法可以使整个内联模型停止保存父保存。如果我在模型中添加一个新字段,我必须进去并在这里添加它。如果你想让它成为一个正确的答案以便我接受它?
标签: python django django-admin