Python中文
首页
教程
问答
标签
搜索
登录
注册
request.user在Django中究竟返回什么,我们可以将其与字符串进行比较吗?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我是Django的新手,正在尝试一些东西。如果普通用户访问“\create”页面(调用名为medicine\u create\u view的函数),我想返回一个名为“in\u accessible.html”的页面, else medicine_create.html</p> <p>admin的名称是“npend”(使用<code>print(request.user)</code>检查),因此我给出了一个if语句来检查用户名是否为“npend”, 我使用request.user方法获取用户名,即使我使用admin访问页面,如果我尝试打印request.user==“npend”,则每次都会打印false</p> <p>谁能帮我解决这个问题,谢谢</p> <p>使用的代码:</p> <pre><code>def medicine_create_view(request, *args,**kwargs): my_form = Raw_Medicine_Form() if request.method == 'POST': my_form = Raw_Medicine_Form(request.POST) if my_form.is_valid(): print(my_form.cleaned_data) Medicine.objects.create(**my_form.cleaned_data) else: print(my_form.errors) my_form = Raw_Medicine_Form() context ={ "form" : my_form, } #print(request.user) #print(request.user=="npend") if(request.user=="npend"): return render(request,"App_1/medicine_create.html",context) else: return render(request,"error_files/not_acessable.html",{}) </code></pre> <p>输出屏幕如图所示:</p> <pre><code>False npend [17/Jun/2021 09:37:36] "GET /create/ HTTP/1.1" 200 227 </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p><code>request.user</code>是一个<code>User</code>对象。如果您打印它,它将打印用户名,但要获取用户名的值,必须使用<code>request.user.username</code></p> <p>文件会告诉你这一点。我只是用谷歌搜索了一下</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
无法使用Django/mongoengine连接到MongoDB(身份验证失败)
1 回答
无法使用Django\u mssql\u后端迁移到外部hos
9 回答
无法使用Django&Python3.4连接到MySql
4 回答
无法使用Django+nginx上载媒体文件
10 回答
无法使用Django1.6导入名称模式
9 回答
无法使用Django1.7和mongodb登录管理站点
8 回答
无法使用Djangoadmin创建项目,进程使用了错误的路径,因为我事先安装了错误的Python
6 回答
无法使用Djangockedi验证CBV中的字段
5 回答
无法使用Djangocketditor上载图像(错误400)
4 回答
无法使用Djangocron进行函数调用
4 回答
无法使用Djangofiler djang上载文件
6 回答
无法使用Djangokronos
9 回答
无法使用Djangomssql provid
2 回答
无法使用Djangomssql连接到带有Django 1.11的MS SQL Server 2016
9 回答
无法使用Djangomssq迁移Django数据库
6 回答
无法使用Djangonox创建用户
10 回答
无法使用Djangopyodb从Django查询SQL Server
7 回答
无法使用Djangopython3ldap连接到ldap
4 回答
无法使用Djangoredis连接到redis
4 回答
无法使用Django中的FK创建新表
8 回答