Symfony Twig error Примечание: неопределенный индекс - PullRequest
0 голосов
/ 29 ноября 2018

Я пытаюсь создать ассоциацию OneToMany в своей сущности Creation.

Creation

class Creation
{
    // ...

    /**
     * @ORM\OneToMany(targetEntity="App\Entity\Categorie", cascade={"persist"}, mappedBy="creation")
     */
    private $categories;

    // ...
}

CreationType

class CreationType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('title')
            ->add('description')
            ->add('categories', EntityType::class,  array(
                'class'         => 'App\Entity\Categorie',
                'choice_label'  => 'label',
                'multiple'      => true,
            ));

    }
}

Теперь я хочу отобразить мои категории в шаблоне веточки:

{% for categorie in creation.categories %}
    {{ categorie.label }}
{% endfor %}

У меня есть эта ошибка, тогда как я могу отобразить в дампе это создание:

Исключение былоброшенный во время рендеринга шаблона («Примечание: неопределенный индекс: создание»).

Кто-то может помочь?Спасибо

1 Ответ

0 голосов
/ 30 ноября 2018

EntityType внутри вашей формы в порядке.вам просто нужно передать creation в виде ветки, внутри вашего контроллера.

Возможно, у вас есть секция контроллера, подобная этой:

class CreationController
{
    // ...

    public function showAction(Request $request)
    {
        $creation = $this->getDoctrine()->getManager()->getRepository(Creation::class)->find($request->get('id'));

        return $this->render('creation_show.html.twig', ['creation' => $creation]);
    }

    // ...
}

Вы должны передать объект $creation как creation в ваш шаблон, чтобы вы могли использовать его внутри шаблона ветки

...