如何使用django泛型类detailview获取特定于用户的对象?

如何使用django泛型类detailview获取特定于用户的对象?,django,generics,django-views,Django,Generics,Django Views,如何使用django的通用类DetailView获取当前与用户相关的对象?使用基于函数的视图,我可以获得如下对象: def foo(request): friendProfile = get_object_or_404(request.user.profile.friends,username="admin") 使用详图视图的等效值是什么?我猜这与get\u object或get\u context\u data有关,但我不能完全理解文档 谢谢。请求是基于类的视图的属性。要获取当前用户

如何使用django的
通用类DetailView
获取当前与用户相关的对象?使用基于函数的视图,我可以获得如下对象:

def foo(request):  
  friendProfile = get_object_or_404(request.user.profile.friends,username="admin")
使用详图视图的等效值是什么?我猜这与
get\u object
get\u context\u data
有关,但我不能完全理解文档


谢谢。

请求
是基于类的视图的属性。要获取当前用户,应使用
self.request.user

DetailView
上,重载
get\u queryset
以编辑用于获取对象的queryset

我不知道您的好友模型是如何定义的,但我们假设它有一个外键指向您的个人资料,其
相关的\u名称设置为
好友\u of
。你的观点可能是:

class FriendProfileDetail(DetailView):
    model = Friend
    def get_queryset(self):
        return self.model.objects.filter(friend_of=self.request.user.profile)

你能给我举个例子吗?太好了!谢谢