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 に答える