在Django的模板中使用认证数据的方法
作者:goldensun 时间:2022-09-08 00:29:45
当前登入的用户以及他(她)的权限可以通过 RequestContext 在模板的context中使用。
注意
从技术上来说,只有当你使用了 RequestContext这些变量才可用。 并且TEMPLATE_CONTEXT_PROCESSORS 设置包含了 “django.core.context_processors.auth” (默认情况就是如此)时,这些变量才能在模板context中使用。 TEMPLATE_CONTEXT_PROCESSORS 设置包含了 "django.core.context_processors.auth" (默认情况就是如此)时,这些变量才能在模板context中使用。
当使用 RequestContext 时, 当前用户 (是一个 User 实例或一个 AnonymousUser 实例) 存储在模板变量 {{ user }} 中:
{% if user.is_authenticated %}
<p>Welcome, {{ user.username }}. Thanks for logging in.</p>
{% else %}
<p>Welcome, new user. Please log in.</p>
{% endif %}
这些用户的权限信息存储在 {{ perms }} 模板变量中。
你有两种方式来使用 perms 对象。 你可以使用类似于 {{ perms.polls }} 的形式来检查,对于某个特定的应用,一个用户是否具有 任意 权限;你也可以使用 {{ perms.polls.can_vote }} 这样的形式,来检查一个用户是否拥有特定的权限。
这样你就可以在模板中的 {% if %} 语句中检查权限:
{% if perms.polls %}
<p>You have permission to do something in the polls app.</p>
{% if perms.polls.can_vote %}
<p>You can vote!</p>
{% endif %}
{% else %}
<p>You don't have permission to do anything in the polls app.</p>
{% endif %}
标签:Django
0
投稿
猜你喜欢
一文了解MySQL二级索引的查询过程
2024-01-25 23:24:54
bpython 功能强大的Python shell
2022-05-08 22:12:06
详解javascript事件冒泡
2024-04-18 09:52:09
浅谈Python 对象内存占用
2022-04-01 11:21:40
asp使用shotgraph组件生成数字和字母验证码
2007-09-26 12:26:00
文档对象模型DOM通俗讲解
2024-05-13 09:36:55
Python3自动签到 定时任务 判断节假日的实例
2022-11-15 15:48:48
Python脚本实现一键自动整理办公文件
2022-01-02 16:36:03
Go+Vue开发一个线上外卖应用的流程(用户名密码和图形验证码)
2024-05-09 14:52:17
python版单链表反转
2021-08-20 17:11:12
tensorflow自定义激活函数实例
2023-04-18 09:11:51
python如何将自己的包上传到PyPi并可通过pip安装的方法步骤
2021-04-02 10:53:07
python实现实时视频流播放代码实例
2021-09-11 21:11:22
一文详解Python中生成器的原理与使用
2021-11-29 16:52:55
mysql自动增量备份的实例方法(本地备份与远程备份)
2024-01-16 12:28:32
Access2000迁移到Oracle9i要点
2010-07-27 13:10:00
PHPCMS的使用小结
2023-11-20 20:19:47
手把手带你了解python多进程,多线程
2021-07-16 02:08:42
node.js中的fs.statSync方法使用说明
2024-05-13 10:05:29
phpcms中的评论样式修改方法
2024-05-02 17:17:23