如何将外部json数据传递给nunjucks中的宏?
我有一个nunjucks宏用于呈现HTML输入组件。在宏调用中使用JSON内联调用时,它可以正常工作:如何将外部json数据传递给nunjucks中的宏?,json,macros,nunjucks,Json,Macros,Nunjucks,我有一个nunjucks宏用于呈现HTML输入组件。在宏调用中使用JSON内联调用时,它可以正常工作: {{ textfield_macro.textfield('search', fragmentdata = {"fieldname": "my_fieldname", "label": "The field label", "help": "For example 1212-2222-3333-4444"} ] }) }} 但是我想从另一个文件调用json数据。我试过这个: {% set t
{{ textfield_macro.textfield('search', fragmentdata = {"fieldname": "my_fieldname", "label": "The field label", "help": "For example 1212-2222-3333-4444"} ] }) }}
但是我想从另一个文件调用json数据。我试过这个:
{% set templateData %}
{% include 'content/data/index.json' %}
{% endset %}
{{ textfield_macro.textfield('search', fragmentdata = templateData | safe ) }}
这将传入index.json的内容,但它在宏中只能作为字符串使用,而不是json对象。我觉得我错过了一些非常明显的东西,非常感谢任何帮助 虽然没有完全解决这个问题,但对于阅读本文的任何人来说,我已经使用一个自定义过滤器将数据转换回json。所以:
{{textfield_macro.textfield('search',fragmentdata=(templateData | tojson))}
并没有完全解决这个问题,但对于阅读本文的任何人来说,我已经使用自定义过滤器做了一个变通,将数据转换回json。所以:{{textfield_macro.textfield('search',fragmentdata=(templateData | tojson))}