如何使用django的generic class DetailView获取当前与用户相关的对象?使用基于函数的视图,可以获得如下所示的对象:
def foo(request):
friendProfile = get_object_or_404(request.user.profile.friends,username="admin")什么是等效使用详细视图?我猜这是与get_object或get_context_data相关的东西,但我不能完全理解这些文档。
谢谢。
发布于 2017-08-13 07:42:55
request是基于类的视图的属性。要获得当前用户,您应该使用self.request.user。
在DetailView上重载用于编辑用于获取对象的查询集的get_queryset。
我不知道您的朋友模型是如何定义的,但是让我们假设它有一个外键指向您的配置文件,其中related_name设置为friend_of。你的看法可能是:
class FriendProfileDetail(DetailView):
model = Friend
def get_queryset(self):
return self.model.objects.filter(friend_of=self.request.user.profile)https://stackoverflow.com/questions/45657191
复制相似问题