【发布时间】:2013-12-16 11:35:50
【问题描述】:
这个问题是How to remove Add button in Django admin, for specific Model?的延续
我意识到我的第一个问题表述得不好,所以我坚持认为最好是开始新问题,以解决旧问题。因为已经有了一些答案。
所以问题是如何制作只读的 Django 模型。这样您就无法添加新的、删除旧的、更改当前的,但您在 Web 管理 UI 上也没有相应的按钮。
第一个问题的解决方案都与字段有关,但与整个模型无关。
它们都有效,从某种意义上说,您将无法编辑这些字段,但我对它们的操作方式不满意。
目前的解决方案是:
- 在模型的所有字段上使用
readonly_fields-> 我不喜欢它,因为您可以单击行来更改它,但您不能编辑字段。 -
editable=False已提交定义 -> 这不会在 Web 管理 UI 上显示该字段。但是您仍然可以单击行,但是您将什么也看不到,并且仍然有保存按钮。 -
def has_add_permission(self, request):-> 同 2 - 不要给任何人添加此模型的权限 -> 同 2
有什么想法吗?
【问题讨论】:
标签: django django-models django-admin