Loading [MathJax]/jax/input/TeX/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在Django中,为什么像is_staff那样user.is_authenticated是方法而不是成员变量

在Django中,为什么像is_staff那样user.is_authenticated是方法而不是成员变量
EN

Stack Overflow用户
提问于 2010-03-15 09:02:05
回答 3查看 1.8K关注 0票数 1

由于用户身份验证,我的应用程序中出现了一个bug,这让我损失了一些时间。我认为这有点令人困惑,但也许有人能解释一下原因,在我看来这是非常合乎逻辑的。

user.is_staff是成员变量,而user.is_authenticated是方法。但是,根据类是User还是AnonymousUseris_authenticated只返回True或False (请参阅http://docs.djangoproject.com/en/dev/topics/auth/)

这有什么原因吗?为什么user.is_authenticated是一种方法?

提前感谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-03-15 09:04:34

因为is_staff是一个数据库字段,而is_authenticated不是(因为这会很奇怪)。也许is_authenticated可以变成一个属性,但django开发人员肯定已经决定,把它变成一个函数会更清晰。

票数 8
EN

Stack Overflow用户

发布于 2010-03-15 11:00:01

is_authenticated()只检查用户是否提供了有效的用户名和密码。它将不允许用户作为访客用户登录(如果我没有错话)。

票数 0
EN

Stack Overflow用户

发布于 2020-05-16 05:00:30

is_authenticated()是检查用户当前对象是否填充的函数。

不需要将对象是否被填充存储在数据库中,

如果它被正确填充,则只有该特定对象数据存储在数据库中。

因此,is_authenticated()是方法,而不是user.is_staff字段,该字段用于表示属于人员例如:- super_user下的特定用户数据。为了区分用户,我们需要存储在数据库中

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2445952

复制
相关文章
为什么 build 方法放在 State 中而不是在 StatefulWidget 中
为什么 build 方法放在 State 中而不是在 StatefulWidget 中呢?其中前2点是源代码的注释中给出的原因,最后一点是我的一点个人理解。
老孟Flutter
2021/01/28
9780
为什么Java中类的成员变量不能被重写?成员变量在Java中能够被重写么?不会重写成员变量,而是隐藏成员变量访问隐藏域的方法
这篇文章讨论了Java面向对象概念中一个基本的概念--Field Hiding(成员变量隐藏)
desperate633
2018/08/22
3.7K0
为什么Java中类的成员变量不能被重写?成员变量在Java中能够被重写么?不会重写成员变量,而是隐藏成员变量访问隐藏域的方法
为什么是int main()而不是void main()
这是基于我们学校老师一直使用void main(),而发的感慨,大一学习C语言时,我就在想,老师上课演示的为什么一直用void main(),而不是int main()呢?不为了偷懒?还是习惯性的语句呢?在查阅了部分大牛的博客,翻阅了C Primer Plus和C++ Primer Plus这两本圣经级别的书本之后,得出以下结论(有一部分是别人的结论,属于半转载),可能不太严谨,请多多包涵。
对弈
2019/09/04
3.7K0
在应用开发中,我为什么选择 Flutter 而不是 React Native ?
作为一位开发人员,我想在本文中与大家聊聊跨平台开发领域的两大核心选项——Flutter 与 React Native 框架,并介绍我自己为什么更偏爱 Flutter。
逆锋起笔
2021/01/28
3.5K0
为什么 useState 返回的是 array 而不是 object?
这里可以看到 useState 返回的是一个数组,那么为什么是返回数组而不是返回对象呢?我们在自定义 hook 时应该返回什么类型呢?
小鑫
2022/04/26
2.4K0
idea中类中显示成员变量和方法
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/147178.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/01
1.7K0
idea中类中显示成员变量和方法
为什么我在 Linux 上使用 exa 而不是 ls?
我们生活在一个繁忙的世界里,当我们需要查找文件和数据时,使用 ls 命令可以节省时间和精力。但如果不经过大量调整,默认的 ls 输出并不十分舒心。当有一个 exa 替代方案时,为什么要花时间眯着眼睛看黑白文字呢?
用户1880875
2021/09/06
2.1K0
为什么 wait/notify/notifyAll 在 Object 类定义而不是 Thread 类?
作者:Yujiaao 来源:segmentfault.com/a/1190000019962661
Java技术栈
2020/06/16
1.5K0
为什么要用Getter和Setter方法,而不是公开属性
大多数字段的访问都是通过Getter和Setter方法来间接访问,为什么不直接将字段设置为公开属性Public呢?答案在于前者的未来可能性。当我在Java语言编程中开始我的职业生涯时,我就对Getter和Setter感到困惑。为什么要这么写呢?为什么不直接用Public呢?这对我来说是个奇怪的语法。
三哥
2018/12/17
2.2K1
为什么要用Getter和Setter方法,而不是公开属性
在Java内部类中使用外部类的成员方法以及成员变量
http://blog.csdn.net/zhongyili_sohu/article/details/8975947
用户7886150
2021/04/28
2.9K0
“人工迷你大脑”像蜜蜂那样思考
欧洲机器人研究团队开发了一种带有“人工迷你大脑”的机器人,这种机器人参考了蜜蜂的思维方式,可以自己学习怎样对周围的环境做出反应。 NeuroRover外形小巧,带有滚轮,长25cm,宽10cm。配有两部用于颜色处理和光线传感的摄像机。 例如,当机器人在学习作出特定的关联,例如关联红色的物体时,电机网络的活动模式改变,并且机器人将自动转向目标,因为蜜蜂采蜜时就是将花蜜和花的颜色关联起来。 这种技术将使机器人可以将特定的环境刺激与行为规则联系起来,这种仿生结构的人工智能是最有潜力在更广泛的机器人系统推广的应用。
机器人网
2018/04/12
4920
为什么是AUC值而不是GSEA来挑选转录因子呢
通过学习,我们知道这个RcisTarget包内置的motifAnnotations_hgnc是16万行,可以看到每个基因有多个motif。而且下载好的 hg19-tss-centered-10kb-7species.mc9nr.feather 文件,也是 24453个motifs的基因排序信息。但是我们留下来了一个悬念,如何从几万个注释结果里面挑选到最后100个富集成功的motif呢?
生信技能树
2020/12/03
1.3K0
为什么是AUC值而不是GSEA来挑选转录因子呢
SPC控制图为什么是±3σ,而不是±2σ或±4σ?
SPC控制图就是一个预警系统,预警系统都存在两类风险:第一类风险是误报警风险(第一类错误)α,第二类风险是漏报警风险(第二类错误)β。
用户9972271
2022/11/01
5070
Java中为什么要使用单继承而不是多继承?
(1)如果在一个子类继承的多个父类中拥有相同名字的实例变量,子类在引用该变量时将产生歧义,无法判断应该使用哪个父类的变量。
Vincent-yuan
2021/10/13
1.8K0
run timeimport : 成员变量、类、方法
runtime实现机制是什么,怎么用,一般用于嘛,你还能记得你所使用的相关头文件或者某些方法的名称吗? 回答:运行时机制,runtime库里面包含了跟类/成员变量/方法相关的API,比如获取类里面的所
且行且珍惜_iOS
2018/05/22
7120
innodb为什么选择B+ Tree而不是跳表,Redis为什么选择跳表而不是B+ Tree
链表和数组相比,数组可以通过下标快速定位,或者通过二分查找,查询复杂度为O(logn),而链表只能按照顺序挨个查找,复杂度为O(n)。
大忽悠爱学习
2023/03/23
2.5K0
innodb为什么选择B+ Tree而不是跳表,Redis为什么选择跳表而不是B+ Tree
CNN:我不是你想的那样
每当我们训练完一个CNN模型进行推理时候,一旦出现人类无法解释的现象就立刻指责CNN垃圾,说这都学不会?其实你可能冤枉它了,而本文试图为它进行辩护。
lujohn3li
2020/11/30
7060
CNN:我不是你想的那样
为什么 Docker 和 Kubernetes 是用 Go 写的而不是 C# ?
这是 Reddit 平台上面这几天一篇比较热门的帖子, 非常有意思,本文我列出了几个高赞的回答。
全球技术精选
2022/09/05
1.2K0
为什么人工智能被认为是机遇而不是危险?
人工智能的腾空出世,让许多人心存疑惑,这究竟对人类来说,是机遇,是挑战,还是某种未知的危险?成为了一个饱受争议的问题。人工智能作为一门交叉科学,涉及到社会学、信息学、控制学、仿生学等众多领域,既是生命科学的精髓,更是信息科学的核心。在新一代信息技术接力式创新的驱动下,万物互联和智能化趋势越发明显,也更有力的证明人工智能的机遇远远大于危险。
用户8858632
2021/11/30
4470
静态成员在PHP中是怎么继承的?
静态成员,也就是用static修饰的变量或者方法,如果搞不清楚它们实现的原理,就很容易会出现一些错误。这次我们来研究的是在继承中静态成员的调用情况。首先来看这样一段代码:
硬核项目经理
2020/02/17
1.5K0

相似问题

为什么Django使用is_staff和is_superuser而不是权限?

11

在Django中,如何限制is_staff成员访问URL?

20

为什么图标标识的字段是“?”而不是像官方的例子那样?

10

为什么django表单变量成为静态成员而不是实例成员?

10

在JavaScript中,为什么Function.prototype的类型是“函数”,而不是像其他原型对象那样是“对象”?

40
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档