У меня есть вопросы сущности и ответы сущности. Ответы относятся к вопросу и имеют поле Правильно (которое является просто логическим значением true/false). Каждый вопрос имеет 4 ответа и из этих 4 ответов 1 правильный.
Сейчас я реализую бэкэнд-форму, в которой можно добавлять или редактировать вопросы. Для этого я использую формы Symfony. Мой конструктор форм выглядит так:
QuestionType.php
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('description', TextareaType::class, [
'label' => 'admin.question.form.description',
'required' => false,
])
->add('question', TextType::class, [
'label' => 'admin.question.form.question',
])
->add('answers', CollectionType::class,[
'label' => 'admin.question.form.answers.answers',
'entry_type' => AnswerType::class,
]);
}
Поэтому я использую коллекцию для ответов, которых всего будет 4. Эта коллекция создает формы AnswerType.
ТипОтвета.php
public function buildForm(FormBuilderInterface $builder, array $options): void
{
$builder
->add('answer', TextType::class, [
'label' => 'admin.question.form.answers.answer',
])
->add('correct', RadioType::class,[
'label' => 'admin.question.form.answers.correct',
]);
}
Это всего лишь 2 элемента формы, поле ввода для ответа и радиокнопка, чтобы указать, является ли ответ истинным или ложным.
Я хочу отобразить эти 4 поля ответа, каждое из которых имеет радиокнопку в конце, чтобы указать правильный ответ. К сожалению, эти радиокнопки не связаны между собой, и каждая из них принадлежит своей коллекции. Каждая радиокнопка может быть выбрана, поэтому каждый ответ может быть выбран как правильный. Что кажется логичным, потому что нет способа заставить Symfony сгруппировать их.
Каждый имеет свое имя и не принадлежит друг другу. Как можно связать эти флажки или как лучше решить эту проблему?