Создание и редактирование формы с полями choice в Symfony?

Мучаю Symfony, а она меня. У нее получается лучше ). Создаю формы и коллекции однотипных форм без проблем, но уперся в формы на основе связанных данных. Ответа найти не смог. То ли я дурак, то ли все умнее ). Делаю на сайте раздел с FAQ, который содержит список разделов(глав) и вопросов с ответами для каждой главы.

Суть проблемы.
Есть две Доктриновские сущности - разделы(Item) и вопросы-ответы(Faq) для них. Соответственно со связью один-ко-многим (в каждом разделе по несколько вопросов).

Не могу понять, как создать форму, чтобы в неё ввести новый вопрос и указать, выбрав из раскрывающегося списка к какому разделу(главе) он относится.

Есть ли способ "из коробки" для отображения уже имеющихся разделов или нужно создавать две формы в одной? В одной предварительно выбрать и сформировать данные для тега (отдельной встроенной формой) из сущности раздела(Item) и вторая с пустыми полями для вопроса и ответа? Как то не красиво и громоздко.. И как тогда редактировать старые данные?

Это же нужно сплошь и рядом. Может, есть готовый пример подобного?
  • Вопрос задан
  • 2589 просмотров
Решения вопроса 1
pavel_salauyou
@pavel_salauyou
Symfony2 & Angular разработчик
если правильно понял, то нужно создать в форме faq поле item_id, с типом entity и в параметре query_builder сделать выборку всех item и всё.

Вот варианты

->add('item', 'entity', array(
    'class' => 'AcmeHelloBundle:Item',
    'property' => 'title',
));


$builder->add('item', 'entity', array(
    'class' => 'AcmeHelloBundle:Item',
    'query_builder' => function(EntityRepository $er) {
        return $er->createQueryBuilder('u')
            ->orderBy('u.username', 'ASC');
    },
));
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы