1

当我使用基于函数的视图时,我经常这样做:

def my_view(request, username):
  user = get_object_or_404(User, username = username)
  if user != request.user:
    return HttpRequestForbidden()

这个编码确保只有用户john可以访问像/users/john/edit/.

如何使用基于类的视图来做同样的事情?

4

1 回答 1

2

我的问题似乎与基于 Django 类的 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
于 2012-09-12T19:48:44.363 回答