今天首席CTO笔记来给各位分享关于django如何跳转到网页的相关内容,其中也会对怎么用django写一个登陆页面进行详细介绍,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、python django 做了个web ,在登录界面我想直接调用系统的login模板,可是每次登录成功之后就跳到2、Django写的LoginView,登录成功后无法跳转回原页面,求助3、django本地重定向外网4、django如何在用户登录后返回到原来来页面,并保持登陆状态5、python中如何实现session过期时自动跳转到登录页面?python django 做了个web ,在登录界面我想直接调用系统的login模板,可是每次登录成功之后就跳到
系统的login.html里包含一个重定向URL的next隐藏域。有这么一行:
input type="hidden" name="next" value="{{ next }}" /
登陆以后跳转到系统默认的/accounts/profile
你把value改成你想要跳转的url或者给next重新传一个url也行
Django写的LoginView,登录成功后无法跳转回原页面,求助
You do not need to make an extra view for this, the functionality is already built in.
First each page with a login link needs to know the current path, and the easiest way is to add the request context preprosessor to settings.py (the 4 first are default), then the request object will be available in each request:
settings.py:
TEMPLATE_CONTEXT_PROCESSORS = (
"django.core.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.request",
)
Then add in the template you want the Login link:
base.html:
a href="{% url django.contrib.auth.views.login %}?next={{request.path}}"Login/a
This will add a GET argument to the login page that points back to the current page.
The login template can then be as simple as this:
registration/login.html:
{% block content %}
form method="post" action=""
{{form.as_p}}
input type="submit" value="Login"
/form
{% endblock %}
django本地重定向外网
相对简单,利用HTTP_REFERER,Django的注销页面这样写就行:
def logout_user(request):
logout(request)
return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/'))
登录操作:
登陆操作相对复杂,因为一般都有单独的登陆页面,如果登陆成功再取HTTP_REFERER就是登陆页面自己的url,而不是之前的那个页面。
django如何在用户登录后返回到原来来页面,并保持登陆状态
任何页面的头部显示登录状态的部分应该是一个block,其他页面继承此block,这个block里面写上初始化js,从后台获取登录状态
python中如何实现session过期时自动跳转到登录页面?
一. 建立基本过滤器
建立一个过滤器涉及下列五个步骤:
1)建立一个实现Filter接口的类SessionFilter 。这个类需要三个方法,分别是:doFilter、init和destroy。doFilter方法包含主要的过滤代码,init方法建立设置操作,而destroy方法进行清除。
2)在doFilter方法中放入过滤行为。doFilter方法的第一个参数为ServletRequest对象。此对象给过滤器提供了对进入的信息(包括表单数据、cookie和HTTP请求头)的完全访问。第二个参数为ServletResponse,通常在简单的过滤器中忽略此参数。最后一个参数为FilterChain,如下一步所述,此参数用来调用servlet或JSP页。
3)调用SessionFilter 对象的doFilter方法。Filter接口的doFilter方法取一个FilterChain对象作为它的一个参数。在调用此对象的doFilter方法时,激活下一个相关的过滤器。如果没有另一个过滤器与servlet或JSP页面关联,则servlet或JSP页面被激活。
4)对相应的servlet和JSP页面注册过滤器。在部署描述符文件(web.xml)中使用filter和filter-mapping元素。
5)禁用激活器servlet。防止用户利用缺省servlet URL绕过过滤器设置。
结语:以上就是首席CTO笔记为大家整理的关于django如何跳转到网页的全部内容了,感谢您花时间阅读本站内容,希望对您有所帮助,更多关于怎么用django写一个登陆页面、django如何跳转到网页的相关内容别忘了在本站进行查找喔。