저는 지난 몇 시간 동안이 질문에 어려움을 겪었으므로 아무것도 찾을 수 없었습니다.FOSUserBundle 그룹 사용자 (symfony2)
나는 FOSUserBundle을 구성하고 그룹을 올바르게 활성화하고 작동하도록했습니다. 사용자 클래스에서 다음과 같이 그러나, 사용자 그룹의 관계가 정의됩니다
/**
* @ORM\ManyToMany(targetEntity="Netlabs\UserBundle\Entity\Group")
* @ORM\JoinTable(name="fos_user_user_group",
* joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="group_id", referencedColumnName="id")}
*)
*/
protected $groups;
및 그룹 클래스에서, 난 정의 $ 사용자 목록이 없습니다. 내 그룹 클래스에서 $ users 변수를 만들고 User 객체와의 관계를 정의하는 것과 같은 많은 "일반적인"작업을 시도했지만 FOSUserBundle을 사용하면 좋지 않습니다 (매번 관계를 만들 때 NEW 테이블이 만들어지며, 이미 제자리에있을 때). 예 :
/**
* @ORM\ManyToMany(targetEntity="Netlabs\UserBundle\Entity\Group", inversedBy="groups", cascade={"all"})
*
*/
protected $users;
의견이 있으십니까?
는 다시 내 주요 목표는 : 나는() 그룹 클래스에서
당신의 제안을 같이 코드를 수정하고 실행 한 후와 "교리 : 스키마를 : 업데이트 --force" "교리를 : 엔티티 : 생성", 그것은 여전히 "새 테이블을 생성 group_user "를 사용하는 대신"fos_user_user_group "을 사용합니다. – JoshuaWohle
ManyTo§any 관계를 사용하여 새 테이블을 만들어야합니다. 객체 간의 관계를 저장하는 유일한 방법입니다. –
나는 알고있다. 그러나 FOSUserBundle은 이미 "fos_user_user_group"이라는 테이블을 생성한다. 2가 아닌 1 개의 테이블 만 있어야합니다. – JoshuaWohle