AuthorRequiredMixin代码如下,主要是用updateview中的get_object对对象进行判断,不允许当前登录用户操作其他用户 class AuthorRequiredMixin(View): def dispatch(self, request, *args, **kwargs): obj = self.get_object() if obj != self.request.user: raise PermissionDenied
LoginRequiredMixin:只要继承就代表如果没登陆就跳到登陆界面 class ProfileView(LoginRequiredMixin,AuthorRequiredMixin, generic.UpdateView): model = User form_class = ProfileForm #form表单校检,对要更新的数据进行校检,成功即更新 template_name = 'users/profile.html' def get_success_url(self): messages.success(self.request, "保存成功") return reverse('users:profile', kwargs={'pk': self.request.user.pk})#成功后跳转到解析的url地址