Django - 如何在不使用CBV的情况下按用户过滤ListView?

时间:2015-12-22 04:10:56

标签: python django listview django-class-based-views

有可能这样做吗?我一直在寻找相当长的一段时间,但我所见过的每一个解决方案都涉及对我不想做的ListView进行子类化。我确定有一种方法可以按用户过滤结果,而无需借助基于类的视图,我似乎无法找到有关它的好信息,我错过了什么?

我尝试了类似的一些事情,但我不认为它会以我尝试的方式工作,而且我唯一的另一种方式就是这样做。我们看到的是CBV:

url(r'^$', ListView.as_view(queryset=Game.objects.filter(user=User.user), template_name = 'userprofile.html')),

1 个答案:

答案 0 :(得分:1)

当您发送查询请求时,您已在请求中拥有当前用户的实例:

<强> views.py

10^-8

<强> urls.py

def my_not_cb_view(request): user = request.user games = Game.objects.filter(user=User.user) context = {'games': games, 'user': user} render_to_response(request, 'user profile.html', context=context)