作者:殇子休 | 来源:互联网 | 2023-09-17 09:30
这不是最好的方法!数据库User表中因为是系统初始化的表,如果添加额外的字段需要修改django源文件,不利于移植,为避免带来其他问题,可以使用last_name字段做为权限控制,
这不是最好的方法!
数据库User表中因为是系统初始化的表,如果添加额外的字段需要修改django源文件,不利于移植,为避免带来其他问题,可以使用last_name字段做为权限控制,当然也可以用profile方法为user表添加新字段(对于user表示一对一关系,但不是在User表中),session在用户登录之后会一直存储user的信息,所以用user表中的字段在html中引用实现更简单一点(group可以在视图里使用)
如下图:
在http://10.1.1.145:8000/admin/auth/user/ 里如下图:
在一个模板leftmenu.html中,可以根据姓氏(last_name)字段来控制显示什么菜单,用不同类型的账号登陆就会显示不同的导航菜单,如下代码:
<ul>
<li><a href="{% url "logout_view" %}">注销,重新登录a>li>
<li><a href="{% url "test" %}">测试一下a>li>
{% if user.last_name == ‘1‘ %}
<li><a href="http://www.baidu.com">leve1a>li>
<li><a href="www.baidu.com">用户类型1a>li>
{% endif %}
{% if user.last_name == ‘2‘ %}
<li><a href="http://www.baidu.com">leve2a>li>
<li><a href="www.baidu.com">用户类型2a>li>
{% endif %}
{% if not user.is_superuser %}
<li><a href="http://www.baidu.com">普通用户a>
<ul>
<li><a href="http://www.baidu.com">普通用户测试a>li>
ul>
最后附上整理好的word版本百度网盘下载地址:http://pan.baidu.com/s/1mgkegYW
2.4.4.3、Django用user表last_name字段做权限控制,,
2.4.4.3、Django用user表last_name字段做权限控制