- 已更新 - 嗨,我的 Web 开发有“一半”问题:
我在一个从数据库调用中获取值的类中有这个方法,(数据库中的表有一个键:catId 和另一个字段)
def getCat(self):
''' devuelve el numero de la categoria
'''
a = self.datab.select('categorias',where='catName = $nombre', vars=dict(nombre=self.nombre))
a= a.list()
return a[0].catId
context: i use this to make some categorization in my web content, so i want to return the value wich will join to the content table in the database.
因此,如果我给它一个 self.nombre ,它是一个存储在数据库行中的字符串,我将永远从数据库中获取一个元素。
python解释器给了我这个错误:
File "C:\xampp\htdocs\webpy\functions.py", line 26, in getCat return a[0].catId IndexError: list index out of range
127.0.0.1:51463 - - [05/Apr/2013 13:29:22] “HTTP/1.1 GET /c/\css\style.css” - 500 内部服务器错误
但是网络正确地给出了信息, 我对网络输出没有问题,但我想知道为什么索引 a[0] 中出现此错误
我制作了 a.list() 以简化 itterbetter 的某些用途
空闲解释器中的完整错误消息:
0.0 (1): SELECT catName FROM categorias ORDER BY catId ASC 127.0.0.1:51900 - - [05/Apr/2013 16:46:31] "HTTP/1.1 GET /c/" - 200 OK 0.0 (1): SELECT * FROM categorias WHERE catName = '\\css\\style.css' Traceback (most recent call last): File "C:\Python27\lib\site-packages\web\application.py", line 236, in process return self.handle() File "C:\Python27\lib\site-packages\web\application.py", line 227, in handle return self._delegate(fn, self.fvars, args) File "C:\Python27\lib\site-packages\web\application.py", line 409, in _delegate return handle_class(cls) File "C:\Python27\lib\site-packages\web\application.py", line 384, in handle_class return tocall(*args) File "C:\xampp\htdocs\webpy\code.py", line 32, in GET seleccion = functions.categoria(db,cat) File "C:\xampp\htdocs\webpy\functions.py", line 16, in __init__ self.n = self.getCat() #calculo del numero de la categoria PROBLEMAS File "C:\xampp\htdocs\webpy\functions.py", line 26, in getCat return a[0].catId IndexError: list index out of range