ol_efk
@ol_efk

Symfony3 Как сделать запись в две таблицы, в одном контроллере?

Доброй ночи.
Ситуация следующая, есть регистрация FOSUserBundle, есть 2 таблицы users и info_user.
Как можно записать данные сразу в две таблицы формы для users:
- username;
- password;
- email;
Форма info_user:
- lastname;
- firstname;
- phone;

Спасибо за помощь, использую symfony3.3.5
  • Вопрос задан
  • 389 просмотров
Пригласить эксперта
Ответы на вопрос 2
skobkin
@skobkin
Гентушник, разработчик на PHP и Symfony.
Комментировать
ol_efk
@ol_efk Автор вопроса
public function createAction(Request $request)
    {

        $individualUser = new IndividualUser();

        $iform = $this->createForm('BackendBundle\Form\IndividualUserType', $individualUser);

        $iform->handleRequest($request);

        $user = new User();

        $form = $this->createForm('BackendBundle\Form\UserType', $user);

        $form->handleRequest($request);

        if ($form->isSubmitted() && $form->isValid()) {
            $em = $this->getDoctrine()->getManager();
            $individualUser->setUser($user->getId());
            $em->persist($individualUser);
            $em->persist($user);
            $em->flush();

            return $this->redirectToRoute('_user_index');
        }

        return $this->render('BackendBundle:User:create.html.twig',array(
            'form' => $form->createView(),
            'iform' => $oform->createView()
        ));
    }


Ошибка
An exception occurred while executing 'INSERT INTO individualuser (firstname, lastname, phone, user_id) VALUES (?, ?, ?, ?)' with params [null, null, null, null]:

Поправьте, пожалуйста, где я ошибся.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы