我想允许用户使用他们的电子邮件以及FOSUserBundle中描述的用户名登录。它工作正常,但在使用 PUGXMultiUserBundle 时,它不会。
应用程序/配置/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 捆绑表单来注册我的用户类型之一(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.