无法使用新版本从数据库打印数据
我正在使用最新版本的 web.py。
我正在尝试将数据从数据库打印到网页。 我使用的代码如下,
import web
from google.appengine.ext import db
from models import *
urls = (
'/', 'index',
)
render = web.template.render('templates', base='base')
class index:
def GET(self):
votes = db.GqlQuery("SELECT * FROM votes")
return render.index(votes)
app = web.application(urls, globals())
main = app.cgirun()
模板如下
$def with(votes)
$for vote in votes:
<li>$vote.status</li>
,当我运行它时我得到了这个
[<models.votes object at 0x0000000004525F28>]
,这是新版本的错误吗,因为它在以前的版本中有效。
我忘了说我正在按此处所述编译模板。
I am using the latest version of web.py.
I am trying to print data from the database to a webpage.
The code i use is the following
import web
from google.appengine.ext import db
from models import *
urls = (
'/', 'index',
)
render = web.template.render('templates', base='base')
class index:
def GET(self):
votes = db.GqlQuery("SELECT * FROM votes")
return render.index(votes)
app = web.application(urls, globals())
main = app.cgirun()
the template is the following
$def with(votes)
$for vote in votes:
<li>$vote.status</li>
and i am getting this when i run it
[<models.votes object at 0x0000000004525F28>]
Is this a bug with the new version cause in previous version it works.
I forgot to say that i am compiling my templates as stated here.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
它可以在我的机器上运行,使用以下代码运行最新的 web.py 0.36:
main.py
templates/index.html
templates/base.html
这是结果:
It works on my machine, running the latest web.py 0.36 with this code:
main.py
templates/index.html
templates/base.html
this is the result:
我不使用 web.py;但也许它不按预期支持模板中的生成器/迭代器。首先尝试通过将行更改为来获取结果:
I don't use web.py; but maybe it doesn't support generators/iterables in the templates as expected. Try fetching the results first by changing your line to: