我的看法:
class ModEmailDeleteView(DetailView):
model = EmailModel
template_name = "email_delete.html"
success_url = reverse_lazy('moderator_profile', request.user.id)
这里我想检查特定字段的用户是否是请求用户然后只有他可以删除。喜欢
if obj.user == request.user
那么只有他可以删除或者抛出404
如果我在 url 中有多个主键怎么办?并希望使用这些主键进行不同的验证
请您参考如下方法:
你可以这样做:
class ModEmailDeleteView(DeleteView):
model = EmailModel
template_name = "email_delete.html"
success_url = reverse_lazy('moderator_profile', request.user.id)
def delete(self, request, *args, **kwargs):
self.object = self.get_object()
if self.object.user == request.user:
self.object.delete()
return HttpResponseRedirect(self.get_success_url())
else:
raise Http404 #or return HttpResponse('404_url')
