Всем привет, в общем есть 3 таблицы, (user, project, user_projects), таблица user_project состоит из 3-х полей id, user_id, project_id. Создал форму для создания юзера, добавил селект из списка проектов, т.е. у селекта используется Project::class, поэтому при сохранении я естественно ловлю ошибку что ожидается UserProject, а отдаю Project, так вот вопрос как это правильно сделать? Видел есть преобразователи данных, но я не уверен что это тот случай где они должны использоваться.
$builder->add('projects', EntityType::class, array(
'class' => (string) Project::class,
'attr' => array('class' => 'form-control listbox-no-selection listbox-tall'),
'multiple' => true,
'choice_label' => 'name',
'required' => false,
))
if ($request->isMethod('POST')) {
$form->submit($request->request->get($form->getName()));
if ($form->isSubmitted() && $form->isValid()) {
/** @var $user User */
$user = $form->getData();
$user->setPassword($passwordEncoder->encodePassword($user, $user->getPassword()));
$em->persist($user);
$em->flush();
return $this->redirectToRoute('users_list');
}
}