Django错误:TypeError at / 'bool' object is not callable解决

yipeiwu_com7年前Python基础

使用 Django自带的 auth 用户验证功能,编写函数,使用 is_authenticated 检查用户是否登录,结果报错:

TypeError at / 'bool' object is not callable  

编写函数如下:

def index(request, pid=None, del_pass=None):
  if request.user.is_authenticated():
    username = request.user.username
    useremail = request.user.email
  messages.get_messages(request)
  template = get_template('index.html')
  html = template.render(context=locals(), request=request)
  return HttpResponse(html)

查询相关资料,发现 is_authenticated 是属性而不是方法,我们应该把括号去掉,这样就没什么问题了。

将 

if request.user.is_authenticated():

改为

 if request.user.is_authenticated:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python的randrange()方法使用教程

 choice()方法从一个列表,元组或字符串返回一个随机项。 语法 以下是choice()方法的语法: choice( seq ) 注意:此函数是无法直接访问的,所...

python中map()函数的使用方法示例

python中map()函数的使用方法示例

前言 在python里有一个函数map(),它有点高大上的感觉。本文将详细给大家介绍python中map()函数使用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介...

Python中time模块与datetime模块在使用中的不同之处

Python 中提供了对时间日期的多种多样的处理方式,主要是在 time 和 datetime 这两个模块里。今天稍微梳理一下这两个模块在使用上的一些区别和联系。 time 在 Pyth...

深入了解Python iter() 方法的用法

今天我们来介绍下Python基础教程学习之iter() 方法另外的用法。据说很少有人知道这个用法! 一、上代码、学用法 我们都比较熟悉 iter(obj),会返现一个迭代器,如果 ob...

在Python中操作字符串之startswith()方法的使用

 startswith()方法检查字符串是否以str开始,任选限制匹配与给定索引的开始和结束。 语法 以下是startswith()方法的语法: str.startswit...