默认情况下,Django Admin后台的listview模型列表页,会有一个Delete Selected删除所选操作。假设你需要再从Hero管理模型中移除该删除操作。
ModelAdmin.get_actions方法可以返回所有的操作方法。通过覆盖此方法,移除其中delete_selected方法,便可可以从下拉列表中删除它。将HeroAdmin管理模型的代码修改如下:
def get_actions(self, request):
actions = super().get_actions(request)
if 'delete_selected' in actions:
del actions['delete_selected']
return actions
修改后,Admin后台效果如下:
前
后