0

当我尝试保存与 Sonata 的媒体实体的多对多关系链接的实体时,我收到错误:实体未配置为级联持久

我在两个表之间创建了实体类,名为 EntityMedias。

现在我有 Entity -1----N- EntityMedias -N----1- Media

并且注解在EntityMedias中设置了两个多对一关系,一个与Entity相关,一个与Media相关。

如何使用级联 Persist 配置实体?我试图将选项 cascade=persist 添加到列符号中,但它不起作用。

在 EntityAdmin 中,我使用 sonata_type_collection 来显示实体内部的 $entityMedias 关系。

如果我不向新实体添加任何媒体,一切正常。

任何帮助将不胜感激

谢谢!

4

1 回答 1

0

You have to observe the syntax for Doctrine to actually pick this up. If you have

/**
 * @ORM\ManyToMany(targetEntity="Entity", mappedBy="medias") 
 */
protected $medias;

you would have to turn this into that:

/**
 * @ORM\ManyToMany(targetEntity="Entity", mappedBy="medias", cascade={"persist"}) 
 */
protected $medias;

I took this from the relevant documentation here and here.

于 2012-09-11T05:36:53.610 回答