Web请求中的认证:https://yiyibooks.cn/xx/django_182/topics/auth/default.html

Django使用会话和中间件来拦截request 对象到认证系统中。

它们在每个请求上提供一个request.user属性,表示当前的用户。如果当前的用户没有登入,该属性将设置成AnonymousUser的一个实例,否则它将是User的实例。

视图函数views.py中无需修改因为

# Django会给request对象添加一个属性request.user
# 如果用户未登录->user是AnonymousUser类的一个实例对象
# 如果用户登录->user是User类的一个实例对象
# request.user.is_authenticated()
# 除了你给模板文件传递的模板变量以外,django框架会把request.user也传递给模板文件

templates/base.html中

{#    欢迎信息#}
{% block header_con %}
<div class="header_con">
<div class="header">
<div class="welcome fl">欢迎来到天天生鲜!</div>
<div class="fr">
{% if user.is_authenticated %}
<div class="login_btn fl">
欢迎您:<em>{{ user.username }}</em> {# user对象是django自动渲染到模板上 #}
</div>
{% else %}
<div class="login_btn fl">
<a href="/user/login">登录</a>
<span>|</span>
<a href="/user/register">注册</a>
</div>
{% endif %}
<div class="user_link fl">
<span>|</span>
<a href="user_center_info.html">用户中心</a>
<span>|</span>
<a href="cart.html">我的购物车</a>
<span>|</span>
<a href="user_center_order.html">我的订单</a>
</div>
</div>
</div>
</div>
{% endblock header_con %}

最新文章

  1. jquery validate minlength rule is not working
  2. 关于.NET知识体系结构图总结
  3. 单因素特征选择--Univariate Feature Selection
  4. #uwp# XMAL
  5. Leetcode 69 Sqrt(x) 二分查找(二分答案)
  6. phpcms图片模型调用组图的问题
  7. AX 4.0 调用打印设定的功能
  8. Factorization Machine
  9. wireshark筛选器汇总
  10. 64位系统下System32文件系统重定向
  11. Unity笔记
  12. 高级UNIX环境编程3 FILE IO
  13. 看看微软代码的水平——Windows Live Writer 完成开源并推出开源分支
  14. Liunx权限修改命令
  15. (转)基于http协议的api接口对于客户端的身份认证方式以及安全措施
  16. [luogu2296][寻找道路]
  17. .gz解压
  18. Ansible 的初步使用
  19. react 使用 redux 的时候 用 ref获取子组件的state
  20. 二分查找(lower_bound和upper_bound)

热门文章

  1. Lock Free (无锁并发)
  2. Mysql 语句 insert into 与 replace into 区别
  3. Linux基础(03)gdb调试
  4. redis源码分析(二)-rio(读写抽象层)
  5. lcd12864菜单
  6. lsyncd实时同步工具
  7. Codeforces Round #596 (Div. 1, based on Technocup 2020 Elimination Round 2)
  8. jupyter notebook在 mac 使用
  9. &quot;Sed&quot; 高级实用功能汇总
  10. 2019-07-24 Smarty模板引擎的简单应用