即使用户登录,django登录也会失败
下面是我的用户登录页面代码。如果登录显示注销链接,我请求用户登录。但当我点击submit时,它会打开新主页并显示登录链接,而不是注销链接即使用户登录,django登录也会失败,django,Django,下面是我的用户登录页面代码。如果登录显示注销链接,我请求用户登录。但当我点击submit时,它会打开新主页并显示登录链接,而不是注销链接 <!DOCTYPE html> <html> <head> <title>please login</title> </head> <body> {% if form.errors %} <p class="text
<!DOCTYPE html>
<html>
<head>
<title>please login</title>
</head>
<body>
{% if form.errors %}
<p class="text-warning">Your login credential did not match</p>
{% endif %}
<form role="form" class="form-horizontal" method="post" action="{% url 'boardgame_home_page' %}">
{% csrf_token %}
{{ form }}
<input class="btn btn-primary" type="submit" value="Login"/>
<input type="hidden" name="next" value="{{ next }}" />
</form>
</body>
</html>
url.py
urlpatterns += patterns('django.contrib.auth.views',
url(r'^logout/','logout',{'next_page':'boardgame_home_page'},name='boardgames_logout'),
)
urlpatterns = patterns('django.contrib.auth.views',
url(r'^$','login',{'template_name':'login/login.html'},name='boardgames_login'),
)
我的家乡景色
从django.shortcuts导入渲染到响应
def home_page(request):
return render_to_response('home/home.html')
您没有使用“来自请求的用户”参数 使用主页模板中的请求参数 home/home/html
<!DOCTYPE html>
<html>
<head>
<title>board game</title>
</head>
<body>
{% if request.user.is_authenticated %}
<a href="{% url 'boardgames_logout' %}">logout</a>
{% else %}
<a href="{% url 'boardgames_login' %}">login</a>
{% endif %}
{% if request.user.is_authenticated %}
<h1> Hi {{ request.user.unsername }} !</h1>
{% else %}
<p>welcome the my page , <a href="{% url 'boardgames_login' %}">click here to login</a> </p>
{% endif %}
</body>
</html>
棋盘游戏
{%if request.user.u经过身份验证%}
{%else%}
{%endif%}
{%if request.user.u经过身份验证%}
你好{{request.user.unsername}!
{%else%}
欢迎来到我的页面
{%endif%}
您需要确保始终向视图传递RequestContext
。最简单的方法是使用,如下所示:
from django.shortcuts import render
def home_page(request):
return render(request, 'home/home.html')
在模板中,默认情况下,当前登录的用户作为{{user}}
可用,但仅当您传入请求上下文时可用
现在我得到了匿名用户
这是有意义的,因为您的表单正在提交到boardgame\u主页
,如果您提交的查看代码是主页表单,则您实际上没有登录任何人
看看django提供的,它向您展示了如何让用户登录。在主页视图中需要类似的逻辑
最后,不要忘记,然后确保需要登录用户的任何视图都是属性。您可以显示您的视图代码和设置.py
?您传递到模板的用户很可能与请求.user
不同。您是否碰巧传递了用户
?你可以发布首页查看功能吗?这是错误的,因为请求已经在django模板中可用;这一点也不干。现在我变得匿名了。现在我变得匿名了
<!DOCTYPE html>
<html>
<head>
<title>board game</title>
</head>
<body>
{% if request.user.is_authenticated %}
<a href="{% url 'boardgames_logout' %}">logout</a>
{% else %}
<a href="{% url 'boardgames_login' %}">login</a>
{% endif %}
{% if request.user.is_authenticated %}
<h1> Hi {{ request.user.unsername }} !</h1>
{% else %}
<p>welcome the my page , <a href="{% url 'boardgames_login' %}">click here to login</a> </p>
{% endif %}
</body>
</html>
from django.shortcuts import render
def home_page(request):
return render(request, 'home/home.html')