Når du opretter to entiteter med en en-til-en-relation, skal begge entiteter bevares enten eksplicit eller ved at bruge cascade persist på den ene side af relationen. Du skal også udtrykkeligt angive begge sider af forholdet.
Doktrin - arbejde med foreninger - Transitiv persistens / Cascade Operations
Stater:
Doktrin - Arbejde med foreninger - Etablering Foreninger
Stater:
Uden kaskade vedvarende har du brug for noget som dette:
$skin = new Skin();
$email = new Email();
$skin->setEmail($email);
$email->setSkin($skin);
$em->persist($email);
$em->persist($skin);
$em->flush();
Med cascade persist på hudsiden af forholdet kan du udelade $em->persist($skin)
. Bemærk, at hvis du kaskade vedvarer, ville du normalt også kaskade fjerne:
* @ORM\OneToOne(targetEntity="MediaparkLt\UserBundle\Entity\Email", inversedBy="skin", cascade={"persist", "remove"})