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

Django - How to filter a ListView by user without using CBV?

这可以吗?我一直在寻找很长一段时间,但我看到的每个解决方案都涉及 subclassing ListView 我不想这样做。我确信有一种方法可以按用户过滤结果,而不必求助于基于 class 的视图,我似乎无法找到关于它的好信息,我错过了什么吗?

我已经尝试了一些与此类似的方法,但我认为它不会像我尝试的那样起作用,我见过的唯一其他方法是使用 CBV:

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

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

views.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)

urls.py

url(r'^$', my_not_cb_view)