2014-02-12 5 views
0

이것은 UserController.php 컨트롤러에서 작업입니다 :FOSUserBundle을 사용한 사용자 조작?

public function createAction() 
{ 
    $userManager = $this->container->get('fos_user.user_manager'); 
    $user = $userManager->createUser(); 

    $user->setUsername('test'); 
    $user->setEmail('[email protected]'); 
    $user->setPassword('test'); 
    $user->setEnabled(1); 
    $user->setRoles(array('ROLE_ADMIN')); 

    return $this->redirect($this->generateUrl('crm_user_index')); 
} 

내가 설명서를 따라하지만 전혀 작동하지 않습니다.

무엇이 잘못 되었나요? 컨트롤러의 작업으로 사용자를 생성하는 가장 좋은 방법입니까?

$this->getDoctrine()->getEntityManager()->flush(); 

나 :

답변

1

전년 동기 대비 같이, 작업의 교리 장치를 세척해야

$userManager->updateUser($user); 
+0

감사합니다, 그것을 작동합니다! – foozoor

+0

또 다른 어리석은 질문 : 암호 암호화를 setPassword()에 적용하는 방법? – foozoor

+0

대신'setPlainPassword()'를 사용해야합니다. 인코더 설정은 별도의 레이어에 있으므로'security.yml'을 확인하십시오. – NHG