Django admin禁用编辑链接和添加删除操作详解

yipeiwu_com6年前Python基础

禁用admin中models的编辑链接和添加删除按钮

方法如下:

class MyModelAdmin(models.ModelAdmin):
 ...
 List_display_links = None #禁用编辑链接
 
 def has_add_permission(self, request):
 # 禁用添加按钮
    return False

  def has_delete_permission(self, request, obj=None):
   # 禁用删除按钮
    return False

  def get_actions(self, request):
   # 在actions中去掉‘删除'操作
    actions = super(GradesManagementAdmin, self).get_actions(request)
    if request.user.username[0].upper() != 'J':
      if 'delete_selected' in actions:
        del actions['delete_selected']
    return actions

需要注意的是,这种禁用编辑链接的放法只是不让它在页面中显示,即把超链接去掉了,但是还是可以通过手动输入url的方式来进入编辑页面。不过可以配合设置fieldsets或者readonly_fieldss来达到目的。

以上这篇Django admin禁用编辑链接和添加删除操作详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python判断字符串是否是json格式方法分享

在实际工作中,有时候需要对判断字符串是否为合法的json格式 解决方法使用json.loads,这样更加符合‘Pythonic'写法 代码示例: Python import json...

Python实现随机取一个矩阵数组的某几行

废话不多说了,直接上代码吧! import numpy as np array = np.array([0, 0]) for i in range(10): array =...

Python使用itchat模块实现简单的微信控制电脑功能示例

本文实例讲述了Python使用itchat模块实现简单的微信控制电脑功能。分享给大家供大家参考,具体如下: #!/usr/bin/python #coding=UTF-8 impor...

Python使用稀疏矩阵节省内存实例

推荐系统中经常需要处理类似user_id, item_id, rating这样的数据,其实就是数学里面的稀疏矩阵,scipy中提供了sparse模块来解决这个问题,但scipy.spar...

python生成lmdb格式的文件实例

在crnn训练的时候需要用到lmdb格式的数据集,下面是python生成lmdb个是数据集的代码,注意一定要在linux系统下,否则会读入图像的时候出问题,可能遇到的问题都在代码里面注释...