symfony twig рендеринг массива аргументов контроллера

Я хотел бы отправить массив в качестве аргумента в команде ветки, как:

{{ render(controller("AppBundle:Default:Test"), { 'myarray': array }) }}

Но я не могу придумать хороший способ. Давайте объясним следующий простой пример с базовым AppBundle. В моем проекте рендер будет запрашивать рендеринг из другого пакета. Я уверен, что процесс один и тот же, всякий раз, когда это один и тот же пакет или нет.

В контроллере по умолчанию я положил это:

 /**
 * @Route("/test", name="test")
 */
public function testAction()
{
    return $this->render('AppBundle:Default:Test.html.twig', array (
        'tests' => array("Test 1", "Test 2", "Test 3", "Test 4")
    ));
}

/**
 * @Route("/test2", name="test2")
 */
public function test2Action($tests = array())
{
    var_dump($tests);

    return $this->render('AppBundle:Default:Test2.html.twig', array(
        'tests' => $tests
    ));
}

Я добавил var_dump для отслеживания массива, и он не пересылается в функцию test2Action.

В Test.html.twig у меня есть этот код:

{{ render(controller("AppBundle:Default:Test2"), { 'tests': tests }) }}

В Test2.html.twig у меня есть этот код:

{% for test in tests %}
    {{ test }}</br>
{% endfor %}

Наконец, у меня есть это в навигаторе:

array(0) { }

Ничего о массиве, который я отправил функции test2Action через функцию рендеринга / контроллера в ветке.

Я использую Symphony 3.0.3, но даже в Symphony 2.8 я не могу найти никакой соответствующей информации.

Может быть, я не использую лучший способ сделать это.

Пожалуйста, не могли бы вы помочь мне. Мне действительно нужно отправить массив из пакета в другой, чтобы оба были независимы от другого.

Большое спасибо, Стеф.

Ответы на вопрос(1)

Ваш ответ на вопрос