Я сопоставляю базу данных, которая уже существует с доктриной, но это было спроектировано плохо, во-первых:
|--------------| |----------------------|
| Entity A | | Entity B |
|--------------| |----------------------|
|ID (Int)(PK)| |ID (Int)(PK)|
|FOO (Str) | |BAR -> A.FOO (Str) |
|--------------| |----------------------|
Сущность B сохранила в базе данных A.FOO, а не A.Я БЫ.Таким образом, если сущность A меняет A.FOO, это не будет каскадно к сущности B.Так что я знаю, что это довольно ужасно, но я не смогу изменить их структуру в настоящее время ..
Есть ли способ сопоставить с доктриной в любом случае, как это?Похоже, я не могу, потому что A.FOO не является первичным ключом?
IN B ENTITY
/**
* @ORM\OneToOne(targetEntity="App\Entity\A")
* @ORM\JoinColumn(name="BAR", referencedColumnName="FOO")
*/
Итак, в конце я хотел бы получить форму для моей сущности B с ChoiceType, содержащим значения A.FOO.,Нужно ли создавать пользовательскую форму с OptionsResolver , извлекающим значения, или есть более простой прямой способ с доктриной?