首页>>后端>>Python->django如何跳转到网页(怎么用django写一个登陆页面)

django如何跳转到网页(怎么用django写一个登陆页面)

时间:2023-12-01 本站 点击:0

今天首席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如何跳转到网页的相关内容别忘了在本站进行查找喔。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/5601.html