注销后如何使用不同的目标路径?

发布于 2024-11-28 08:50:54 字数 396 浏览 1 评论 0原文

这是我的问题:我有一个项目翻译成两种语言(英语和法语)。在 security.yml 中,我必须配置防火墙(使用登录表单),特别是注销后的目标路径:

logout:
    path: /user/logout
    target: /

但我无法根据用户的文化选择目标路径...

我没有这个登录时出现问题,实际上我直接在登录表单中选择目标路径:

<input type="hidden" name="_target_path" value="/{{ app.session.locale }}/" />

所以我不知道注销后如何在 /fr/ 上重定向(如果您是法国人),否则 /en/ ... 您有任何解决方案吗?

Here's my problem: I have a project translated in 2 languages (en & fr). In the security.yml, I've to configure a firewall (with a login form), and specifically the target path after logout:

logout:
    path: /user/logout
    target: /

But I can't choose the target path depending on user's culture...

I don't have this problem when signin, in fact I choose the target path directly in my login form:

<input type="hidden" name="_target_path" value="/{{ app.session.locale }}/" />

So I don't know how to redirect after logout on /fr/ if you are french, or otherwise /en/ ... Do you have any solution ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小糖芽 2024-12-05 08:50:54

您可以添加自定义注销处理程序,请参阅 Symfony\Component\Security\Http\Firewall\LogoutListener。使用 DIC,您可以轻松地覆盖它。

You can add a custom logout handler, see successHandler property of Symfony\Component\Security\Http\Firewall\LogoutListener. With the DIC you can easily override it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文