2014-03-29 45 views
0

我試圖通過這個教程(我使用的symfony 2.4)來實現簡單的登錄頁面:symfony的簡單的登錄頁面錯誤

http://symfony.com/doc/current/book/security.html

登錄頁的罰款。但是當我提交表單時,我得到了這個錯誤:

Unable to find the controller for path "/login_check". Maybe you forgot to add the matching route in your routing configuration? 

我在網上搜索並試了一切。我的配置有什麼問題?

security.yml

security: 
    encoders: 
     Symfony\Component\Security\Core\User\User: plaintext 

    role_hierarchy: 
     ROLE_ADMIN:  ROLE_USER 

    providers: 
     in_memory: 
      memory: 
       users: 
        user: { password: admin, roles: [ 'ROLE_USER' ] } 
        admin: { password: admin, roles: [ 'ROLE_ADMIN' ] } 

    firewalls: 
     main: 
      pattern: ^/ 
      form_login: 
       login_path: /login 
       check_path: /login_check 
       default_target_path: /dashboard/ 
     login_firewall: 
      pattern: ^/login$ 
      anonymous: ~ 
     secured_area: 
      pattern: ^/ 
      form_login: ~ 

    access_control: 
     - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY } 
     - { path: ^/, roles: ROLE_ADMIN } 

的routing.yml

login: 
    path:  /login 
    defaults: { _controller: AdminSecurityBundle:Security:login } 

login_check: 
    pattern: /login_check 

回答

0

您使用pattern keywork代替path

login_check: 
    pattern: /login_check 
    ^------ should be path 

所以你必須修改你的routing.yml這種方式

login_check: 
    path: /login_check 
+0

謝謝,我犯了一個巨大的錯誤。在config.yml中我沒有包含security.yml :( – michal