我是Python和web.py(我目前正在使用)的新手,所以请耐心等待。
import web
db = web.database(dbn='postgres', db='mydata', user='dbuser', pw='')
results = db.query("SELECT COUNT(*) AS total_users FROM users")
print results[0].total_users # -> prints number of entries in 'users' table
看起来查询的结果是字典列表{total_user:num}对吗?
我的情况非常相似:对数据库运行SELECT,希望得到一个key:value数据列表。
在models.py中:
def get_items:
return self.db.query("SELECT title FROM news")
在code.py中:
items = model.get_items
return render.list(items)
在templates / list.html中:
$def with (items)
$for item in items:
<p>$item.title</p>
但是,代码会触发错误,因为“'tuple'对象没有属性'title'”。 我做错了什么?在此先感谢您的帮助。
答案 0 :(得分:0)
它会触发,因为你只是从新闻中选择title属性,而obvioulsy会给出像(a,b,c,d)这样的元组作为结果。 如果你想要一个对象作为结果,做这样的事情
self.db.query("SELECT * FROM news")