0
我创建了一个多对多的关系,并通过命令行生成crud。我有用户和组。symfony 2多对多关系crud
USER
/**
* @ORM\ManyToMany(targetEntity="Grup", mappedBy="users")
* @ORM\JoinTable(name="user_has_grup",
* joinColumns={@ORM\JoinColumn(name="grup_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")}
*)
*/
protected $grups;
Grup
/**
* @ORM\ManyToMany(targetEntity="User", inversedBy="grups")
* @ORM\JoinTable(name="user_has_grup",
* joinColumns={@ORM\JoinColumn(name="grup_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")}
*)
*/
protected $users;
当我创建用户组显示,但我不能将用户分配给组。仍然当我去编辑组我可以分配用户和它的作品。
如果我想在两个方向都能做到,我需要更改哪些内容?有没有任何教条实体的变化或在控制器?
解决: 这里就是答案 HTTP: //docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/unitofwork-associations.html 反面必须使用OneToOne,OneToMany或ManyToMany映射声明的mappedBy属性。 mappedBy属性包含拥有端的关联字段的名称。 拥有方必须使用OneToOne,ManyToOne或ManyToMany映射声明的inversedBy属性。 inversedBy属性包含反面的关联字段的名称。 – user2217288