2011-12-04 4 views
24

Trong Symfony 2 bạn có thể thiết lập một mục tiêu cho việc đăng xuất. Vì vậy, sau khi đăng xuất, bạn sẽ được chuyển hướng đến /main. Tuy nhiên với thông tin đăng nhập, bạn sẽ được chuyển hướng đến /. Có cách nào để thiết lập mục tiêu cho đăng nhập thành công không?Chuyển hướng sau khi đăng nhập vào Symfony 2

firewalls: 
    dev: 
     pattern: ^/(_(profiler|wdt)|css|images|js)/ 
     security: false 

    login: 
     pattern: ^/m/login$ 
     security: false 

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

Trả lời

50

Có. Bạn có thể sử dụng tùy chọn target_path. Sử dụng ví dụ của bạn ở trên:

firewalls: 
    secured_area: 
     form_login: 
      always_use_default_target_path: true 
      default_target_path: /loggedinpage 

Với người dùng trên sẽ luôn được chuyển hướng đến /loggedinpage khi đăng nhập thành công. Chi tiết về tất cả các tùy chọn cho thành phần bảo mật có sẵn trong Symfony docs (mặc dù hơi bị ẩn đi!)

+2

Cảm ơn (liên kết sâu) đến tài liệu Symfony để biết thêm chi tiết! – flu

+1

Ngoài ra tôi đã nghĩ rằng default_target_path luôn được sử dụng khi bạn không yêu cầu một tuyến đường được bảo mật trước đây. Thật không may nó không phải là. – flu

+0

nếu tôi muốn chuyển miền địa phương sang tuyến đường thì sao? –