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

禁用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来达到目的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值