setVariables()多对多关系symfony2


setVariables() many to many relation symfony2

假设在entityA和entityB之间存在多对多关系我将使用嵌入式表单将entityA的属性以entityB的形式添加,如下所示

$builder ->add('entityAs', 'entity', array(
              'class'    => 'xxxBundle:EntityA',
              'property' => 'name',
              'multiple' => false,
            ));}

当我将'multiple'设置为true时,一切正常。但是当我将其设置为false时,会得到以下错误

Property "entityAs" is not public in class "xxx'Entity'EntityB". Maybe you should create the method "setEntityAs()"?

像往常一样,EntityB类中的属性entityAs不是公共的(受保护或私有)。因此,您必须为它编写(或生成)一个setter: setEntityAs($entityAs)

多个true可能工作,因为我认为(不确定)它使用addXxx Setter。证明我,如果你有一个addEntityAs方法在你的EntityB类?

但是,如果您有一个多对多关系,为什么要将multiple设置为false呢?