我在Symfony 2.3项目中使用FOSUserBundle,我希望在用户确认其帐户点击电子邮件链接后立即执行一些代码。我试图覆盖
class RegistrationController extends ContainerAware
{
...
}
但没有运气:(
我可以在此操作后立即创建任何类型的事件吗?
谢谢!
答案 0 :(得分:0)
您可以创建一个EventListener来监听FOSUserEvents::REGISTRATION_CONFIRMED
,如下所示:
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use FOS\UserBundle\FOSUserEvents;
use FOS\UserBundle\Event\UserEvent;
class RegistrationConfirmedEventListener implements EventSubscriberInterface
{
public static function getSubscribedEvents()
{
return array(FOSUserEvents::REGISTRATION_CONFIRMED => 'performOnRegistrationConfirmed');
}
public function performOnRegistrationConfirmed(UserEvent $event)
{
$user = $event->getUser();
// Do something
}
}