【发布时间】:2018-03-20 23:40:33
【问题描述】:
我需要创建一个具有多个语言环境的应用。每条路由都以语言环境为前缀。例如xxx.com/en/home、xxx.com/fr/home。
问题是,我需要将语言环境字符串动态绑定到路由前缀。由于用户可以更改语言环境,因此语言环境字符串存储在会话中。我需要参考 web.php 上的会话。 Session 对象不能在 web.php 的全局范围内使用,这意味着 session('key') 不会在最外层范围内为您提供任何东西(null),除了路由函数,因为 Laravel 在实例化任何会话之前解析 web.php对象,我想。因此,我面临一个难题,即我无法在 web.php 的最外层范围内引用会话,而我需要会话来创建动态前缀。我该如何解决这个问题?
【问题讨论】:
-
如何添加一个中间件来找出本地并相应地重定向。顺便说一句,您可以在应用程序的任何位置设置/访问
session()助手。