Por*_*ear 6 symfony doctrine-orm
我有从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;
Run Code Online (Sandbox Code Playgroud)
这在数据库中生成的模式绝对没问题.纠正列,正确的索引和关系.
Symfony2表单AssemblyType具有ComponentSlotType的集合.我可以添加多个ComponentSlot子项.在持久化时,除了组件槽表中的assembly_id为NULL之外,Assembly和ComponentSlot子项都保存得非常好.
我已经复制了我之前在保存关系的项目上的设置,我完全被难倒了.级联持久化是在Assembly的componentSlots字段中设置的,我之前使用OneToMany的经验是我不需要在这里做任何特殊的事情,应该注意它.
任何指针将不胜感激:)
检查您之前的设置。我怀疑你有类似的情况:
// Assembly
public function addComponentSlot($componentSlot)
{
$this->componentSlots[] = $componentSlot;
$componentSlot->setAssembly($this); // Probably left this out when you copied?
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2116 次 |
| 最近记录: |