在用户确认注册后立即执行操作

时间:2014-05-03 02:53:15

标签: symfony symfony-2.3

我在Symfony 2.3项目中使用FOSUserBundle,我希望在用户确认其帐户点击电子邮件链接后立即执行一些代码。我试图覆盖

class RegistrationController extends ContainerAware 
{
...
} 

但没有运气:(

我可以在此操作后立即创建任何类型的事件吗?

谢谢!

1 个答案:

答案 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
    }
}
相关问题