在可以删除模型之前,我覆盖了mainAxisAlignment
方法以添加条件。看起来像这样:
delete_queryset
这确实可以防止删除,但是会显示错误消息,并在其下面显示def delete_queryset(self, request, queryset):
if condition_is_not_met:
self.message_user(request, 'Error', level=messages.ERROR)
return
super().delete_queryset(request, queryset)
(再次,未删除,因此不应存在成功消息)。我不想显示该错误消息,如果条件不满足,甚至没有显示确认页面,那会更好(尽管这是一个奖励)。有什么建议吗?
答案 0 :(得分:3)
只需重写modeladmin上的has_delete_permission
方法,该方法将根据条件返回True或False。
def has_delete_permission(self, request, obj=None):
if condition_is_not_met:
return False
return True