Php 登录Symfony2后维护区域设置
在一个使用Symfony的多语言网站上,我在侧边栏中嵌入了一个带有登录表单的页面。假设我使用的是西班牙语版本,当前的url是Php 登录Symfony2后维护区域设置,php,symfony,authentication,fosuserbundle,Php,Symfony,Authentication,Fosuserbundle,在一个使用Symfony的多语言网站上,我在侧边栏中嵌入了一个带有登录表单的页面。假设我使用的是西班牙语版本,当前的url是mysite.com/es。在这个页面上,$request->getLocale()给了我'es',一切都很好 但是,如果我在这个页面上提交登录表单,我会进入mysite.com。url中的'es'部分已消失,$request->getLocale()为我提供'en'。如何使我的url和区域设置不发生更改 我的表格: <form id="login-form" met
mysite.com/es
。在这个页面上,$request->getLocale()
给了我'es'
,一切都很好
但是,如果我在这个页面上提交登录表单,我会进入mysite.com
。url中的'es'
部分已消失,$request->getLocale()
为我提供'en'
。如何使我的url和区域设置不发生更改
我的表格:
<form id="login-form" method="POST" action="/login-check">
<input type="text" id="userEmail" name="_username">
<input type="password" id="userPassword" name="_password">
<input type="hidden" name="_csrf_token" value="{{ fos_csrf_provider.generateCsrfToken('authenticate') }}">
</form>
您正在查找以下内容:
粘性区域。我在我的一个项目中使用了它。尝试创建一个登录侦听器,然后重定向到正确的位置
main:
pattern: ^/
form_login:
provider: fos_userbundle
csrf_provider: form.csrf_provider
login_path: /
check_path: /login_check
logout:
path: my_site_logout
target: /
success_handler: my_site.logout_success_handler
anonymous: true
remember_me:
key: %secret%