使用jinja传递的上下文中的键访问jinja2中dict中的元素
Accessing element in dict in jinja2 with a key in context passed by jinja
所以我有这个数据结构
data ={
"status": 200,
"loan_amount": 500,
"repayment": {
200: {7: 250, 14:300},
500: {7: 550, 14: 600}
}
}
现在我想在 jinja 模板中访问带有贷款金额的还款
from jinja2 import Template
template = Template("Your repayment options are {{repayment.{{loan_amount}} }}")
template.render(data)
遇到语法错误。
有谁知道如何访问它。不是我事先不知道 loan_amount 这就是为什么我想以这种方式访问它
这似乎有效:
>>> import jinja2
>>> from jinja2 import Template
>>>
>>> template = Template("Your repayment options are {{repayment[loan_amount] }}")
>>> template.render(data)
u'Your repayment options are {14: 600, 7: 550}'
jinja2
,有点像javascript,doesn't really distinguish between item access via like x['foo']
vs x.foo
。所以,我只使用了前一种方法而不是后者(在 {{...}}
中,一切都已经由 jinja "dereferenced")。
所以我有这个数据结构
data ={
"status": 200,
"loan_amount": 500,
"repayment": {
200: {7: 250, 14:300},
500: {7: 550, 14: 600}
}
}
现在我想在 jinja 模板中访问带有贷款金额的还款
from jinja2 import Template
template = Template("Your repayment options are {{repayment.{{loan_amount}} }}")
template.render(data)
遇到语法错误。 有谁知道如何访问它。不是我事先不知道 loan_amount 这就是为什么我想以这种方式访问它
这似乎有效:
>>> import jinja2
>>> from jinja2 import Template
>>>
>>> template = Template("Your repayment options are {{repayment[loan_amount] }}")
>>> template.render(data)
u'Your repayment options are {14: 600, 7: 550}'
jinja2
,有点像javascript,doesn't really distinguish between item access via like x['foo']
vs x.foo
。所以,我只使用了前一种方法而不是后者(在 {{...}}
中,一切都已经由 jinja "dereferenced")。