有没有办法通过瓶子给模板多个变量?我知道您可以使用template('mytemplate.tpl',var=var)
等,但是,如何使用多个变量?
答案 0 :(得分:4)
正如您在signature中所看到的,可以使用keyword arguments将任意数量的变量传递给模板:
template('mytemplate.tpl', name="Anne", address="4 Elm Street",
dob=datetime.datetime(1977,12,2,1,2,3))
或者像这样
d = { "name": "Anne", "address": "4 Elm Street", "dob": datetime.datetime(1977,12,2,1,2,3) }
template('mytemplate.tpl', **d)
答案 1 :(得分:0)
values = {'name':name, 'gender':gender, 'age':age, 'address':address}
template('mytemplate', var = values)
在您的模板中,您可以访问变量var.name
,var.gender
,var.age
,var.address
答案 2 :(得分:0)
我更喜欢的方法是:
@route('/')
@view('mytemplate') #no .tpl
def mypage():
return {"name": "Anne", "address": "4 Elm Street", "dob": datetime.datetime(1977,12,2,1,2,3)}
这使得处理多个return语句变得更加容易(虽然有些人认为多次返回语句不好),我发现更改模板文件要容易得多,因为我不需要每次都找到它。 / p>
或者如果您更喜欢a = b,b = c等方法
return dict(name="Anne", address="4 Elm Street", dob=datetime.datetime(1977,12,2,1,2,3))