加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

django – 如果所有字段都是只读的,则在admin中隐藏保存按钮

发布时间:2020-12-20 13:30:01 所属栏目:Python 来源:网络整理
导读:我使用以下get_readonly_fields方法不允许在 django的管理界面中编辑对象: def get_readonly_fields(self,request,obj=None): if obj == None or request.user.is_superuser: return self.readonly_fields # marks all fields as readonly otherwise fields
我使用以下get_readonly_fields方法不允许在 django的管理界面中编辑对象:

def get_readonly_fields(self,request,obj=None):
    if obj == None or request.user.is_superuser:
        return self.readonly_fields

    # marks all fields as readonly otherwise
    fields = [f.name for f in self.model._meta.fields]
    return fields

这完美地工作,但保存和保存并继续编辑仍然显示.他们不会做任何事情,因为所有字段都是只读的.

因此我的问题是:有没有办法隐藏这些保存按钮取决于所有字段是否为只读?我怎么能实现这个?

EDIT1:

我知道如何覆盖admin / submit_line.html模板,但我想要做的是将show_save,show_save_as_new设置为False,如果我只有只读字段.如何更改这些变量值?

解决方法

在django / contrib / admin中有一个名为submit_line.html的文件,用于呈现按钮.要覆盖它们,请在模板目录中创建一个名为admin的文件夹,在admin / submit_line.html中,您可以按照自己的方式修改它(基于某些规则).请注意,以这种方式修改会影响每个管理对象视图页面.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读