diff --git a/apps/users/api/user.py b/apps/users/api/user.py index ac661e457..1864f72f4 100644 --- a/apps/users/api/user.py +++ b/apps/users/api/user.py @@ -60,8 +60,10 @@ class UserViewSet(IDInCacheFilterMixin, BulkModelViewSet): self.permission_classes = (IsOrgAdminOrAppUser,) return super().get_permissions() - def allow_bulk_destroy(self, qs, filtered): - return False + def perform_bulk_destroy(self, objects): + for obj in objects: + self.check_object_permissions(self.request, obj) + self.perform_destroy(obj) def perform_bulk_update(self, serializer): # TODO: 需要测试 diff --git a/apps/users/templates/users/user_list.html b/apps/users/templates/users/user_list.html index 046a77822..d992416d1 100644 --- a/apps/users/templates/users/user_list.html +++ b/apps/users/templates/users/user_list.html @@ -258,25 +258,28 @@ $(document).ready(function(){ },function () { function success(data) { url = setUrlParam(the_url, 'spm', data.spm); + function success() { + var msg = "{% trans 'User Deleted.' %}"; + swal("{% trans 'User Delete' %}", msg, "success"); + } + function fail() { + var msg = "{% trans 'User Deleting failed.' %}"; + swal("{% trans 'User Delete' %}", msg, "error"); + } requestApi({ url:url, method:'DELETE', + flash_message:true, success:reloadPage, - flash_message:false, + error: fail }); - var msg = "{% trans 'User Deleted.' %}"; - swal("{% trans 'User Delete' %}", msg, "success"); - } - function fail() { - var msg = "{% trans 'User Deleting failed.' %}"; - swal("{% trans 'User Delete' %}", msg, "error"); } requestApi({ url: "{% url 'api-common:resources-cache' %}", method:'POST', body:JSON.stringify(data), + flash_message:false, success:success, - error:fail }) }) }