В моем приложении пользователь создает учетную запись, после чего пользователь может заполнить несколько форм, и эти данные загружаются в базу данных. Каждый столбец представляет форму, например. личные данные (с адресами, датой рождения), образованием, опытом работы.
В некоторых случаях пользователь не заполняет остальные формы, поэтому для 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. Есть ли способ сделать левое соединение или что-то в этом роде, потому что я не всегда могу гарантировать, что для каждого пользователя есть строка соединения