@ak_wi

Symfony: Как создать форму опроса с ChoiceType?

Есть три класса:
1. Опрос. Содержит ArrayCollection с вопросами
2. Вопрос. Содержит ArrayCollection с ответами
3. Ответ. Содержит только текст ответа

Вопрос в том, как сделать форму для вывода опроса с вопросами и вариантами ответа так, чтобы каждый вопрос был ChoiceType | EntityType | формой с галочками, где вариантами были ответы?

И каким образом лучше хранить данные о результатах? На данный момент используется решение в лоб, когда с помощью отдельной сущности сохраняются id пользователя, id- выбранных вариантов ответа и время прохождения опроса.

class Quiz
{
 /**
     * @ORM\OneToMany(targetEntity="App\Entity\Polls\Question", mappedBy="quiz", cascade={"persist"})
     */
    private $questions;
}

class Question
{

/**
     * @ORM\ManyToOne(targetEntity="App\Entity\Polls\Quiz", inversedBy="questions", cascade={"persist"})
     */
    private $quiz;

 /**
     * @ORM\OneToMany(targetEntity="App\Entity\Polls\Answer", mappedBy="question", cascade={"persist"})
     */
    private $answers;
}

class Answer
{

 /**
     * @ORM\Column(type="text")
     */
    private $text;

/**
     * @ORM\ManyToOne(targetEntity="App\Entity\Polls\Question", inversedBy="answers", cascade={"persist"})
     */
    private $question;
}
  • Вопрос задан
  • 157 просмотров
Пригласить эксперта
Ответы на вопрос 1
@postgresdev
Используйте Collection Type:
https://symfony.com/doc/current/reference/forms/ty...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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