我正在使用Twig在我的Symfony2项目中进行模板化。我需要定义一个二维数组。我试过像
{% set fields = { {'name': 'description', 'value': '1'}, { 'name': 'abc', 'value': '2'}, { 'name':'tags', 'value': '3'} } %}
但是我得到了
A hash key must be a quoted string, a number, a name, or an expression enclosed in parentheses (unexpected token "punctuation" of value "{" in ABundle:XYZ:edit_a_page.html.twig at line 51
不确定上述代码有什么问题。
在树枝中设置二维数组的正确语法是什么?
答案 0 :(得分:31)
在Twig中,数组用[]标记,哈希用{}标记。散列是具有显式键(字符串或整数)的键值对,数组只是一组没有任何明确定义键的值(它们将以数字方式索引)。
为了使用散列,你必须为每个元素提供一个键。
所以,你想要的可能是{% set fields = [ {'name': 'description', 'value': '1'}, { 'name': 'abc', 'value': '2'}, { 'name':'tags', 'value': '3'} ] %}
答案 1 :(得分:2)
你可以这样做
{% set foo = {"adjuster_list": {"id": "1", "name": "Joe Smith"}} %}