- 用login_required装饰器来辨别用户是否登陆,如果没有登陆,则需要进行登录才能继续访问当前页面(有些页面是需要用户登陆后才可以访问);如果已经登陆,则可以继续访问。
- 首先配置
- 如果用户没有登陆,login_required装饰器会默认一个地址进行跳转,所以要在settings中进行配置需要跳转的页面:
-
在user.views中配置:
-
若检查到没有登陆让用户登陆默认链接时,此时登陆页面链接为,上图中的get里'next'指的就是登陆页面里next对应的页面,后边的则是为若链接中没有next对应页面的情况,将商品主页面设为跳转页面。
- 在user.urls中配置:(将需要登陆后才可以查看的所有页面的url设置)
-
上边说到要在所有页面进行配置url,这是不方便的,所以我们用到mixin,先来个介绍:
-
要在项目的通用文件(在项目中新建package,取名为utils)里建立mixin文件,进行配置:
-
在user.views中配置:
-
然后在所有需要进行登录才能查看的页面view类进行继承操作: