У меня есть связь от Assembly к ComponentSlot. Это отношения OneToMany.
// Assembly
/**
* @ORM\OneToMany(targetEntity="ComponentSlot", mappedBy="assembly", cascade={"persist"})
* @Assert\Valid
*/
protected $componentSlots;
// ComponentSlot
/**
* @ORM\ManyToOne(targetEntity="Assembly", inversedBy="componentSlots")
*/
protected $assembly;
Схема, созданная в базе данных, абсолютно нормальная. Правильные столбцы, правильные индексы и отношения.
Форма Symfony2 AssemblyType имеет набор ComponentSlotType. Я могу добавить несколько дочерних ComponentSlot. При сохранении дочерние элементы Assembly и ComponentSlot сохраняются отлично, за исключением того, что Assembly_id имеет значение NULL в таблице слотов компонентов.
Я скопировал настройку, которая была у меня в предыдущем проекте, которая отлично сохранила отношения, я полностью озадачен. Сохранение каскада установлено в полях componentSlots в Assembly, и мой прошлый опыт работы с OneToMany показывает, что мне не нужно делать здесь ничего особенного, об этом нужно позаботиться.
Приветствуются любые указатели :)