2012-09-26 75 views
10

我在我的symfony2项目中管理用户。我能够登录和注销没有问题。现在,我想创建一个注销链接(而不是键入app_dev.php /注销)。Symfony2:创建一个注销链接

我已经tryed

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

但这链接删除app_dev.php,我有一个不存在只/注销。

这里是我的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 } 

非常感谢你。

回答

14

我创建的链接是这样的:(我用的嫩枝)

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

在我的 “UserBundle”,在修改routing.yml文件添加

user_logout: 
     pattern: /logout 
+0

谢谢@Bernat,那正是我需要的。 –

+0

:D接受答案,请:) – Bernat

+0

我必须再等2分钟。会做的。 Thx –

7

当您使用FOSUserBundle您可以使用

{{ path('fos_user_security_logout') }}