覆盖fosbundle RegistrationController symfony 3

时间:2017-03-05 11:42:30

标签: controller override symfony fosuserbundle

首先,我重写fosuserbundle形式它工作,但当尝试使用RegistrationController做同样的事情它不起作用。有人帮忙。 我按照文档说明:

<?php
// src/AppBundle/Controller/RegistrationController.php

namespace AppBundle\Controller;

use Symfony\Component\HttpFoundation\RedirectResponse;
use FOS\UserBundle\Controller\RegistrationController as BaseController;
use Symfony\Component\HttpFoundation\Request;

class RegistrationController extends BaseController
{
    public function registerAction(Request $request)
    {
   $form = $this->container->get('fos_user.registration.form');
   $formHandler = $this->container->get('fos_user.registration.form.handler');
$confirmationEnabled = $this->container->getParameter('fos_user.registration.confirmation.enabled');
$process = $formHandler->process($confirmationEnabled);
        if ($process) {
            $user = $form->getData();
.......
?>
  

您已请求不存在的服务“fos_user.registration.form”。你的意思是其中一个:“fos_user.registration.form.factory”,“fos_user.registration.form.type”?

1 个答案:

答案 0 :(得分:0)

您尝试使用1.3.X版本的代码。您应该使用master版本。 您可以在此处找到它:RegistrationController-master

或者您只需使用\vendor\friendsofsymfony\user-bundle\Controller\RegistrationController

中的代码即可