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 に答える