2016-07-20 2 views
0

역할 그룹에 사용자를 추가하려고하지만 어떤 이유로이 작업을 수행 할 수 없습니다. 심포니 웹 사이트 http://symfony.com/doc/current/bundles/FOSUserBundle/groups.html에 대한 설명서를 따라했습니다. 개체가 만들어졌지만 정확하지만 아무 것도 발생하지 않습니다.FOSUserBundle 사용자 addGroup이 데이터베이스에 저장되지 않음

UserRoleGroups는 이미 DB에 정의되어 있습니다.

$ oUser 객체에 내가 다른 변경 사항이 하나를 제외하고 저장됩니다

$oGroup = $this->em->getRepository('UserBundle:UserRoleGroups')->findOneByName($sRole); 

$oUser->addGroup($oGroup); 
$this->em->persist($oUser); 
$this->em->flush(); 

을 저장.

사용자 엔티티

class User extends BaseUser 
{ 

    /** 
    * @ORM\Id 
    * @ORM\Column(type="integer") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    protected $id; 

    /** 
    * @ORM\ManyToMany(
    *  targetEntity="App\UserBundle\Entity\UserRoleGroups" 
    *) 
    * @ORM\JoinTable(
    *  name="users_user_role_group", 
    *  joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")}, 
    *  inverseJoinColumns={@ORM\JoinColumn(name="group_id", referencedColumnName="id")} 
    *) 
    */ 
    protected $userRolesGroup; 

UserRoleGroup 법인

class UserRoleGroups extends BaseGroup 
{ 

    /** 
    * @ORM\Id 
    * @ORM\Column(type="integer") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    protected $id; 
+1

적절한 코드를 입력하십시오. –

+0

코드로 내 질문을 업데이트했습니다. –

답변

0

문제 정의 된 addUserRoleGroup 없었다 사용자 엔티티에 있었다.

/** 
* @param UserRoleGroups $userRoleGroups 
*/ 
public function addUserRoleGroup(UserRoleGroups $userRoleGroups) { 
    $this->userRolesGroup->add($userRoleGroups); 
} 

이렇게하면 문제가 해결됩니다.

관련 문제