我正在制作一个自定义模板标签,我希望能够以任何类型的值传递它。用例是这样的:
{% include_with_args "path_to_template.html" simple_var an_object.foo.bar "A String" %}
在评估我的自定义模板代码时,我想以与 Django 通常相同的方式评估simple_var
、an_object.foo.bar
和。"A String"
目前我有
these_args = [context[arg_name] for arg_name in self.arg_names]
但是,这只适用于变量名 ( simple_var
)。
如何让我的模板像 Django 一样评估这些字符串?也就是说,如果.foo
是一个返回带有"bar"
键的 dict 的函数,它应该按预期评估它an_object.foo()["bar"]
:
简单来说:我想将表达式评估为一个值。如何从自定义模板中做到这一点?