将python dict传递给模板

时间:2016-02-18 01:02:55

标签: python flask jinja2

必须有办法做到这一点......但我找不到它。

如果我将一个字典传递给这样的模板:

@app.route("/")
def my_route():
  content = {'thing':'some stuff',
             'other':'more stuff'}
  return render_template('template.html', content=content)

这在我的模板中运行良好......但有没有办法可以放弃'内容'。 ,来自

{{ content.thing }}

我觉得我以前见过这个,但在任何地方找不到它。有什么想法吗?

2 个答案:

答案 0 :(得分:13)

尝试

return render_template('template.html', **content)

答案 1 :(得分:11)

您需要使用**运算符将content dict作为关键字参数传递:

return render_template('template.html', **content)

这实际上与将dict中的项目作为关键字参数传递相同:

return render_template(
    'template.html',
    thing='some stuff',
    other='more stuff',
)