문제

현재 관리자 사용자 세부 정보를 백엔드에서 가져 오는 방법?

도움이 되었습니까?

해결책

클래스의 생성자에 이것을 추가해야합니다

protected $authSession;
public function __construct(
    ....
    \Magento\Backend\Model\Auth\Session $authSession, 
    ....
) {
    ....
    $this->authSession = $authSession;
    ....
}
.

이 방법을 생성합니다

public function getCurrentUser()
{
    return $this->authSession->getUser();
}
.

이렇게하면 현재 로그인 로그인을 제공합니다.
나중에 $user->getUsername() 또는 $user->getEmail()와 같은 세부 정보를 얻을 수 있습니다.

다른 팁

현재 관리자 사용자 세부 정보를 얻는 방법

컨트롤러에 백엔드 세션

public function __construct(
....
\Magento\Backend\Model\Auth\Session $authSession, 
  ....
 ) {
  ....
   $this->authSession = $authSession;
   ....
.

}

사용자 이름이나 전자 메일을 가져 오려면이 옵션을 사용하여 사용자 이름 또는 전자 메일

 $this->authSession->getUser()->getUsername();
$this->authSession->getUser()->getEmail();
.

컨트롤러는 이미 \Magento\Backend\App\Action를 확장하여 이미 권한 부여 객체가 있습니다.추가 주사가 필요하지 않습니다. 사용자 가이 기능을 사용하기 만하면됩니다.

    /** @var \Magento\User\Model\User $user*/
    $user = $this->_auth->getUser();
.

다른 답변은 필요하지 않은 중복 주사를 제안합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 magento.stackexchange
scroll top