Magento 2:現在の管理者ユーザーの詳細を取得する方法
-
29-09-2020 - |
質問
バックエンドで現在の管理ユーザー詳細を取得する方法?
解決
クラス
のコンストラクタにこれを追加する必要があります。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();
.
その他の回答は、必要ではない重複注射を示唆しています。
所属していません magento.stackexchange