有谁知道或有人可以制作一个 Django 基于类的通用 DeleteView 的简单示例吗?我想子类化 DeleteView 并确保当前登录的用户在删除该对象之前拥有该对象的所有权。任何帮助将非常感激。先感谢您。
这是一个简单的:
from django.views.generic import DeleteView
from django.http import Http404
class MyDeleteView(DeleteView):
def get_object(self, queryset=None):
""" Hook to ensure object is owned by request.user. """
obj = super(MyDeleteView, self).get_object()
if not obj.owner == self.request.user:
raise Http404
return obj
Caveats:
- The
DeleteView
不会删除GET
要求;这是您提供确认模板的机会(您可以在template_name
类属性),带有“是的,我确定”按钮POST
到此视图
- 您可能更喜欢错误消息而不是 404?在这种情况下,覆盖
delete
方法,而是在之后检查权限get_object
调用并返回定制的响应。
- 不要忘记提供与(可选可定制)相匹配的模板
success_url
class 属性,以便用户可以确认该对象已被删除。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)