문제

sylius use unless email to connect to the administration,

I want to use username and email in parallel, but it does not work

security.yml

      security:
          providers:
              fos_userbundle:
                  id: fos_user.user_provider.username_email
          encoders:
              FOS\UserBundle\Model\UserInterface: sha512
          firewalls:
              administration:
                  switch_user: true
                  context:     user
                  pattern:     /administration/.*
                  form_login:
                      provider:     fos_userbundle
                      login_path:   /administration/login
                      check_path:   /administration/login-check
                      failure_path: /administration/login
                      default_target_path: /administration/dashboard
                      use_forward:  false
                      use_referer:  true
                  logout:
                      path:   /administration/logout
                      target: /administration/login
                  anonymous: true
도움이 되었습니까?

해결책

Did you check weather the username is different from the email? In Sylius the user gets the same username as his email address as you can see in

Sylius\Bundle\CoreBundle\Model\User


class User{
...

public function setEmail($email)
{
    parent::setEmail($email);
    $this->setUsername($email);

    return $this;
}

public function setEmailCanonical($emailCanonical)
{
    parent::setEmailCanonical($emailCanonical);
    $this->setUsernameCanonical($emailCanonical);

    return $this;
}
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top