2013-07-24 2 views
0

Magento에서 프로그래밍 방식으로 사용자 역할에 사용자 역할을 할당해야합니다. 내가 어떻게 할 수있는? 나는Magento에서 관리 사용자에게 역할을 프로그래밍 방식으로 할당하는 방법은 무엇입니까?

try { 
$user->setRoleIds(array(<role_id>)) 
->setRoleUserId($user->getUserId()) 
->saveRelations(); 

} catch (Exception $e) { 
echo $e->getMessage(); 
exit; 
} 

, 같은 몇 가지 방법을 시도하지만 우리는 위의 코드를 적용 할 때, 데이터베이스가 손상 및 오류를 얻을 얻을 - "Parent Role id 'G5' does not exist"합니다.

위의 코드를 적용하면 상위 역할 ID가있는 관리자가 삭제되고 내가 다시 작성하더라도 이후에 백엔드에 액세스 할 수 없기 때문입니다!

누구나 솔루션을 지적 할 수 있습니까?

답변

0

이상한! 하지만 마지막으로 해결책은 here입니다.

  try { 
      $role = Mage::getModel("admin/role"); 
      $role->setParent_id(5); 
      $role->setTree_level(1); 
      $role->setRole_type('U'); 
      $role->setUser_id($user_id); 
      $role->save(); 
      echo "Your username: ".$username.", and password: ".$password; 
      } catch (Exception $e) { 
      echo $e->getMessage(); 
      } 

이 같은 시도 캐치를 포기하고 일했다. 여기 parent Id이 내 맞춤 역할 ID입니다. $user_id은 역할을 첨부해야하는 사용자의 ID입니다.

관련 문제