Я попробовал некоторые вещи, и я не могу добавить несколько флажков. Когда я отправляю форму, я получаю это сообщение об ошибке:
Ожидаемый аргумент типа «строка или ноль», «массив» указан в пути к свойству «caractere_emotion».
My PersonnageType.php
->add('caractere_emotion', ChoiceType::class, [
'required' => false,
'label' => 'Émotions',
'choices' => [
'Actif' => 'Actif',
'Créatif' => 'Créatif',
'Génie' => 'Génie',
'Créatif' => 'Créatif',
'Joyeux' => 'Joyeux',
'Morose' => 'Morose',
'Pitre' => 'Pitre',
'Romantique' => 'Romantique',
'Sang Chaud' => 'Sang Chaud',
'Sûr de lui' => 'Sûr de lui',
],
'expanded' => true,
'multiple' => true,
])
My Personnage.php сущность:
/**
* @ORM\Column(type="array", nullable=true)
*/
private $caractere_emotion;
CharacterController.php
class CharacterController extends AbstractController
{
public function index(Request $request)
{
$em = $this->getDoctrine()->getManager();
$personnage = new Personnage();
$form = $this->createForm(PersonnageType::class, $personnage);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$em->persist($personnage);
$em->flush();
}
return $this->render('character/index.html.twig', [
'form' => $form,
'form' => $form->createView()
]);
}
}
Шаблон:
{{ form_start(form) }}
{{ form_row(form.competences) }}
{{ form_row(form.principes) }}
{{ form_row(form.autres_personnalite) }}
{{ form_row(form.caractere_emotion) }}
{{ form_row(form.caractere_loisir) }}
<button type="submit" class="btn btn-success">Terminer</button>
{{ form_end(form) }}