我在Symfony 2.3项目中使用FOSUserBundle,我想在用户确认他的帐户点击电子邮件链接后立即执行一些代码。我试图重写
class RegistrationController extends ContainerAware
{
...
}
but no luck:(
我可以创建任何类型的事件在这个动作之后执行吗?
谢谢!
你可以创建一个EventListener来监听FOSUserEvents::REGISTRATION_CONFIRMED
:
use SymfonyComponentEventDispatcherEventSubscriberInterface;
use FOSUserBundleFOSUserEvents;
use FOSUserBundleEventUserEvent;
class RegistrationConfirmedEventListener implements EventSubscriberInterface
{
public static function getSubscribedEvents()
{
return array(FOSUserEvents::REGISTRATION_CONFIRMED => 'performOnRegistrationConfirmed');
}
public function performOnRegistrationConfirmed(UserEvent $event)
{
$user = $event->getUser();
// Do something
}
}