我正在尝试编写一个检索当前登录用户信息的视图。
我的视图如下所示,只要我将用户传递到 URL 中的视图,它就可以正常工作。
def index(request, username, template="index.html"):
user = get_object_or_404(User,
username__iexact=username)
expression_qs = Expression.objects.all().order_by('-created')
album_qs = Album.objects.all().filter(head__isnull=False, is_public=True).order_by('-created')
user_following = user.relationships.following()
following_expressions = positive_filter(expression_qs, user_following, 'user')
following_albums = positive_filter(album_qs, user_following, 'user')
following_feed = sorted(
chain(following_albums, following_expressions),
key=attrgetter('created'), reverse = True)
return render(request, template, locals())
但是,由于这是主页的视图,我不希望修改URL。我宁愿(在模板或视图中)描述如果用户登录或未登录会发生什么的逻辑(如果他们已登录,则显示活动提要,如果没有,只需返回带有登录的静态页面形式)。
我的问题是,我如何将 request.user (但不通过 url)传递给视图,以便它返回当前用户的查询集?