将变量从一个函数移动到另一个函数(在Django用户注册中),python



我对这个很陌生,我已经尝试了几个小时了,它不工作。如果你能帮助我,我将非常感激。非常感谢。

下面是我的代码:
def login_view(request):
    username1 = request.POST['username']
    password1 = request.POST['password']
    user = auth.authenticate(username=username1, password=password1)
    if user is not None and user.is_active:
        # Correct password, and the user is marked "active"
        auth.login(request, user)
        # Redirect to a success page.
        return HttpResponseRedirect("/account/loggedin/")
    else:
        # Show an error page
        return HttpResponseRedirect("/account/invalid/")

def profile_page(request):
    html = loader.get_template('profile_test.html')
    login_view(request)
    c = Context({'user' : username1})
    return HttpResponse(html.render(c))

一切工作完美,当我把username1在profile_page引号。但是,当我使用username1作为全局变量时,它不起作用。如何使用username1作为全局变量?非常感谢你,我已经尝试了各种各样的事情几个小时了,但没有任何效果。再次感谢你。

因为没有返回HttpResponse,所以login_view调用什么也不做

如果您的用户已登录,则任何请求都应自动包含该用户。例如:

if request.user.is_authenticated():
    user = request.user
    context['user'] = user.username

否则,你可以在url中传递用户,然后在视图中获取用户名(或者只是在模板中使用user对象并插入{{user。

相关内容

  • 没有找到相关文章

最新更新