Django入门之用户管理(II)

本篇内容是利用Python语言,创建一个多用户的文章管理系统。
头图


Django入门之用户管理

内置方法的登陆登出
内置方法登陆封装在Django内部文件中,在内部文件中,登陆页面的模板位置在registration/login.html
但需要将数据POST的目标这在action中,是url 'account:user_login'
我们在上一页修改了templates的文件位置,所以现在需要在在templates/registration/login.html中这登陆页面
直接复制account/login.html中代码即可
将内置的登陆功能放到项目中,需要配置url,引入包

    from django.contrib.auth import views as auth_views

并且重新配置路径

    urlpatterns = [
       #url(r'^login/$', views.user_login, name='user_login'),
       url(r'^login/$', auth_views.login, name='user_login'),
    ]

这时的默认跳转位置没有变,内置登陆中的默认跳转位置并没有修改,在settings中最后添加LOGIN_REDIRECT_URL='/blog/'
设置跳转位置是blog页面,可以自定义
检验用户是否登陆
在header.html中使用if user.is_authenticated,判断用户是否登陆返会逻辑
退出功能
使用django内置的退出功能
添加account/urls.py
url(r'^logout/$', auth_views.logout,name='user_logout'),
并为header.html的logout配置跳转页面url 'account:user_login
但其实django的内置页面还是不太美观的,可以直接修改当前页面,当然也可以在template/account/中重新创建一个logout.html页面,并重新将url配置过去,这是比较推荐的方法。
url配置如下
url(r^logout/$,auth_views.logout,{"template_name":"account/logout.html"},name='user_logout'),

猜你喜欢

转载自blog.csdn.net/sinat_38885850/article/details/82155504