PUGXMultiuserBundle & FOSUserBundle войти в систему с электронной почтой

Я хотел бы разрешить пользователям входить в систему как по электронной почте, так и по имени пользователя, как описано в FOSUserBundle. Он работает нормально, но при использовании PUGXMultiUserBundle это не так.

приложение / Config /config.yml:

providers: fos_userbundle: id: fos_user.user_provider.username_email pugx_multi_user: users: user_one: entity: class: UserBundle\Entity\Vendor

Поскольку я использую форму связки sonata-admin для регистрации одного из моих userType (UserBundle\Entity\Vendor), я помещаю в UserBundle/Controller/VendorAdminController:createAction()

        if($form->isSubmitted()){
        $discriminator->setClass('UserBundle\Entity\Vendor');

        $userManager = $this->container->get('pugx_user_manager');

        $userOne = $userManager->createUser();

        $userOne->setUsername($object->getUsername());
        $userOne->setEmail($object->getEmail());
        $userOne->setName($object->getName());
        $userOne->setPlainPassword($object->getPlainPassword());
        $userOne->setEnabled(true);
        ...
        }`

В этот момент все в порядке, когда я хочу войти с именем пользователя, но когда я попытался войти с помощью электронной почты, я получаю следующую ошибку:Invalid credentials.

0 ответов

Другие вопросы по тегам