Doctrine ORM-сущность присоединяется к пустой строке (отсутствует первичный ключ) - PullRequest
0 голосов
/ 01 февраля 2020

В моем приложении пользователь создает учетную запись, после чего пользователь может заполнить несколько форм, и эти данные загружаются в базу данных. Каждый столбец представляет форму, например. личные данные (с адресами, датой рождения), образованием, опытом работы.

В некоторых случаях пользователь не заполняет остальные формы, поэтому для personal_data нет строк (пользователь 3 ниже).

users
____________
id | Name
1  | Jilco
2  | Henk
3  | Simon

Personal_data
___________
id | user_id | adres   | date_of_birth
1  |       1 | street2 | 23-05-1977
2  |       2 | street3 | 22-01-2001

В моем приложении я присоединяюсь к таблицам с помощью аннотации ORM следующим образом:

пользователей. php

/**
* @ORM\OneToOne(targetEntity="\Portal\Entity\PersoonlijkeGegevens", mappedBy="user")
*/
private $persoonlijkeGegevens;

personal_data. php

 /**
 * @ORM\OneToOne(targetEntity="\User\Entity\User", inversedBy="persoonlijkeGegevens")
 * @ORM\JoinColumn(name="user_id", referencedColumnName="id")
 */
private $user;

Это пошло не так в моих взглядах, и я понимаю, почему (но не как решить). В user_data нет объекта для пользователя 3. Есть ли способ сделать левое соединение или что-то в этом роде, потому что я не всегда могу гарантировать, что для каждого пользователя есть строка соединения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...