EasyAdminBundle は、FOSUserBundle ユーザー マニピュレーターを使用してユーザーを作成および管理します。postfix データベースを更新するためにユーザーを作成するときに使用するパスワードを取得したいと考えています。ユーザーが作成されると、dev プロファイラーは FOSUserBundle イベントがリッスンされたことを示しません。EasyAdminBundle イベントはeasy_admin.post_initialize
. EasyAdminEvents
クラスが示しています
/** @Event("Symfony\Component\EventDispatcher\GenericEvent") */
const POST_INITIALIZE = 'easy_admin.post_initialize';
ただし、イベントリスナーには次のものがあります。
use Symfony\Component\EventDispatcher\GenericEvent;
...
public static function getSubscribedEvents()
{
return array(
GenericEvent::POST_INITIALIZE => 'onPostInitialize',
);
}
スロー:
致命的なエラー: Uncaught Symfony\Component\Debug\Exception\FatalThrowableError: 未定義のクラス定数 'POST_INITIALIZE' ...
答えはJavierEguiluz\Bundle\EasyAdminBundle\Event\EasyAdminEvents
、 Symfony ではなくイベントを使用することだと思いましたGenericEvent
。のように
use JavierEguiluz\Bundle\EasyAdminBundle\Event\EasyAdminEvents;
...
public static function getSubscribedEvents()
{
return array(
EasyAdminEvents::POST_INITIALIZE => 'onPostInitialize',
);
}
...
//error occurs on the following line:
public function onPostInitialize(EasyAdminEvents $event)
{
...
}
ただし、そうすると、次の Catch 22 が得られました。
JavierEguiluz\Bundle\EasyAdminBundle\Event\EasyAdminEvents のインスタンス、指定された Symfony\Component\EventDispatcher\GenericEvent のインスタンスでなければなりません"