Использование переменных в качестве хеш-ключей в ветке (в качестве параметров в path () или | trans) - PullRequest
18 голосов
/ 17 января 2012

Возможно ли использовать транс-фильтр или функцию пути динамически? С переменными в качестве параметров? EX1:

{{ path('object_edit', { parameter_type : parameter_value }) }}

потому что: я не знаю, использует ли "объект" id или slug для маршрутизации

ех2:

{{message|trans({ parameter_type : parameter_value }, 'TranslationDomain') }}

потому что: я не знаю, будет ли это "% user%" или "% article%" или что-то еще

Почему это работает нормально:

{{ path('object_edit', { 'id' : parameter_value }) }}

но это не так:

{{ set parameter_type = 'id' }}
{{ path('object_edit', { parameter_type : parameter_value }) }}

Ответы [ 2 ]

52 голосов
/ 25 января 2012
{% set key = 'foobar' %}
{% set hash = { (key) : 'hello world' } %}
{% debug hash %}

отпечатков:

array(1) { ["foobar"]=> string(11) "hello world" } 

, завершение в скобках решает вашу проблему.

14 голосов
/ 29 марта 2013

Заключите хеш-ключи в круглые скобки (не в скобках).

{{ path('object_edit', { (parameter_type) : parameter_value }) }}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...