0

我试图弄清楚 FosUserBundle 的注册过程,但一直无法这样做。

我希望能够使用自定义字段手动注册用户,但无法在代码中看到它。

我在 FosUserBundle 中有 registerAction 并且在任何地方关注它都不会显示信息实际存储在数据库中的位置:

public function registerAction()
    {
        $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();

            if ($confirmationEnabled) {
                $this->container->get('session')->set('fos_user_send_confirmation_email/email', $user->getEmail());
                $route = 'fos_user_registration_check_email';
            } else {
                $this->authenticateUser($user);
                $route = 'fos_user_registration_confirmed';
            }

            $this->setFlash('fos_user_success', 'registration.flash.user_created');
            $url = $this->container->get('router')->generate($route);

            return new RedirectResponse($url);
        }

        return $this->container->get('templating')->renderResponse('FOSUserBundle:Registration:register.html.'.$this->getEngine(), array(
            'form' => $form->createView(),
            'theme' => $this->container->getParameter('fos_user.template.theme'),
        ));
    }

如何手动注册用户?

谢谢

4

1 回答 1

2

你在 FOSUserBundle 文档中读过这个吗?

使用用户管理器

显然,服务 UserManager 有责任实际保存和更新用户,您可以按照指南创建自己的 UserManager。

编辑:Symfony 已将 FOSUserBundle 的文档合并到他们自己的文档中,因此文档的新链接是: https ://symfony.com/doc/master/bundles/FOSUserBundle/index.html

于 2013-06-04T09:29:57.637 回答