我已按照官方文档中的所有步骤在我的项目中安装了FOSUserBundle,但登录不起作用。 当我在登录表单中提交时,它会返回登录页面。没有错误,没有通知,没有。
我的代码:
security.yml
security:
encoders:
FOS\UserBundle\Model\UserInterface: sha512
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: ROLE_ADMIN
providers:
fos_userbundle:
id: fos_user.user_provider.username
firewalls:
main:
pattern: ^/.*
anonymous: true
form_login:
login_path: /login
check_path: /login_check
provider: fos_userbundle
login:
pattern: ^/login$
security: false
access_control:
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/login_check, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/, roles: ROLE_USER }
config.yml
fos_user:
db_driver: orm # other valid values are 'mongodb', 'couchdb' and 'propel'
firewall_name: main
user_class: Cdp\CoreBundle\Entity\BackendUser
用户类
namespace Cdp\CoreBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use FOS\UserBundle\Model\User as BaseUser;
/**
* @ORM\Entity
* @ORM\Table(name="backend_users")
*/
class BackendUser extends BaseUser {
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
public function __construct () {
parent::__construct();
}
}
的routing.yml
fos_user:
resource: "@FOSUserBundle/Resources/config/routing/all.xml"
亲切的问候, 赫苏斯。
答案 0 :(得分:0)
请仔细阅读documentation:
密切注意我们为配置FOSUserBundle的防火墙提供的名称main。您将在配置FOSUserBundle的下一步中使用此名称
然后只需尝试评论您的登录防火墙。希望它会有所帮助。