11

私はsymfony2プロジェクトでユーザーを管理しています。私は問題なくログインとログアウトをすることができます。ここで、(app_dev.php / logoutと入力する代わりに)ログアウトリンクを作成したいと思います。

私は試しました

<a href="/logout">Logout</a>

しかし、このリンクはapp_dev.phpを削除しており、存在しない/logoutしかありません。

これが私のsecurity.ymlです

security:
  encoders:
    MDPI\BackendBundle\Entity\Users:
      id: mdpi.backend.backendencoder.class

  providers:
    secured_area:
     entity: { class: MDPI\BackendBundle\Entity\Users, property: email }

  firewalls:
    secured_area:
      pattern:    ^/
      anonymous: ~
      form_login:
        login_path:  /login
        check_path:  /login_check
      logout:
         path:   /logout
         target: /


  access_control:
    - { path: ^/(?!login)(.*), role: ROLE_admins }
    - { path: /login.*, role: IS_AUTHENTICATED_ANONYMOUSLY }

どうもありがとうございます。

4

3 に答える 3

15

私はこの方法でリンクを作成しました:(私はTWIGを使用します)

<a href="{{ path('user_logout') }}">Logout</a>

そして、私の「UserBundle」のrouting.ymlファイルに追加されました

user_logout:
       pattern:   /logout
于 2012-09-26T09:37:24.983 に答える
13

FOSUserBundleを使用している場合は、次を使用できます。

{{ path('fos_user_security_logout') }}
于 2014-06-01T14:25:38.300 に答える
6

Symfony 2.7以降、Twiglogout_pathまたはlogout_url関数を使用できます。

于 2015-08-02T11:00:56.490 に答える