禁用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博客。
Powered By python教程网 鲁ICP备18013710号
python博客 - 小白学python最友好的网站!