Python 使用jinja传递的上下文中的键访问jinja2中dict中的元素

Python 使用jinja传递的上下文中的键访问jinja2中dict中的元素,python,django,jinja2,Python,Django,Jinja2,所以我有这个数据结构 data ={ "status": 200, "loan_amount": 500, "repayment": { 200: {7: 250, 14:300}, 500: {7: 550, 14: 600} } } 现在我想在jinja模板中访问贷款金额还款 from jinja2 import Template template = Template("Yo

所以我有这个数据结构

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)
我收到一个语法错误。 有人知道如何访问它吗。不是,我事先不知道贷款金额这就是为什么我想通过这种方式访问它

>>> 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}'

有点像javascript,
jinja2
。因此,我只是使用了前一种方法而不是后一种方法(因为在
{…}
中,jinja已经“取消引用”了一切)。

它不起作用。简单地说,我想得到这个结果{{returning[500]}或{{returning.500}。但出于某种原因,它想从loan_amount中获取密钥,因为{{loan_amount}是500,我想要这样的{还款。{{loan_amount}}}}@user2388404--我不确定我是否理解。在您的示例数据中,
贷款金额
500
还款[500]
{14:600,7:550}
,如我的示例所示。贷款金额是500还款[500]是{14:600,7:500}对不起,我还是不明白<代码>还款[500]在您的示例代码中是
{14:600,7:550}
。也许我应该退一步——你想从
模板中得到什么字符串。render(data)
?那么让我们说数据是{“loan_amount”:500,“returning”:{500:{14:600,7:500}我想做这个模板=模板({returning.{loan_amount}})模板。render(data)不直接引用500