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)
这可以吗?我一直在寻找很长一段时间,但我看到的每个解决方案都涉及 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)