Alw*_*oss 5 python templates tornado python-2.7
我有一个模板显示从服务器传递的很多值,我的问题是如何将这些值传递给模板文件.我的Handler代码如下:class AdminHandler(tornado.web.RequestHandler):def get(self,*args,**kwargs):#respond to get方法#self.write("AdminHandler :: Inside GET function")
userName = "Alwin Doss"
welcomeMessage = "Good evening are you enjoying kids dance"
items = {}
items["userName"] = userName
items["welcomeMessage"] = welcomeMessage
self.render("web/admin.html", title="Admin Page", items=items)
Run Code Online (Sandbox Code Playgroud)
我的模板代码如下:{%items ['userName']%} {%items ['welcomeMessage']%} {%end%}
问题是我无法在模板文件中访问这些值.我收到以下错误:
raise ParseError("unknown operator:%r"%operator)ParseError:unknown operator:"items ['userName']"ERROR:root:500 GET/admin(127.0.0.1)3.27ms
gau*_*den 11
这是一个类似于你似乎正在做的演示.查看模板的语法,并查看块{% %}和{{ }}块的不同用法.这段代码:
from tornado import template
t = template.Template('''\
{% for user in users %}
{{ user['userName'] }}
{{ user['welcomeMessage'] }}
{% end %}
''')
# create first user and append to a user list
users = []
user = { "userName" : "Alwin Doss",
"welcomeMessage" : "Good evening are you enjoying kids dance"}
users.append(user)
# create and append second user
user = { "userName" : "John Smith",
"welcomeMessage" : "Good evening, JS"}
users.append(user)
# render the template and output to console
print t.generate(users = users)
Run Code Online (Sandbox Code Playgroud)
生成此输出:
Alwin Doss
Good evening are you enjoying kids dance
John Smith
Good evening, JS
Run Code Online (Sandbox Code Playgroud)
有关Tornado模板的更多信息,请查看本教程,当然还有Tornado模板文档.
| 归档时间: |
|
| 查看次数: |
7649 次 |
| 最近记录: |