4

在“next.html”页面登录时如何向任何用户显示他/她的用户名???

def signin(request):
    if request.method != 'POST':
        return render(request, 'login.html', {'error': 'Email or Password is incorrect'})

    user_profile = User_account.objects.filter(e_mail = request.POST['user_email'],     passwd = request.POST['password'])     
    if user_profile:
        return render(request, 'next.html', {'name' :User_account.objects.**WHAT SHOULD I WRITE HERE???** } )
    else:
        return render(request, 'login.html', {'error': 'Email or Password is incorrect'})
4

1 回答 1

19

有两种方法可以做到:

a) 直接在模板中:

{{request.user.username}}

或者:b)

return render(request, 'next.html', {'name' : request.user.username })

请注意,您尚未“登录”用户

在您的情况下,您可以执行以下操作:

return render(request, 'next.html', {'name' : user_account.first_name })

您需要调用该login方法来实际登录用户,或者手动处理登录。这篇文章可以为您提供方法。

你还需要一个request_context 处理器

于 2013-06-09T13:31:59.603 回答