laravel-backpack - 会话语言环境背包
问题描述
我是背包用户,我正在尝试更改应用程序的语言。通过会话,我可以发送另一种语言,但是当它通过背包 URL 进入路由时,它又被修改为英语。这可能是由某些中间件引起的。您能给我提供中间件或提供其他解决方案吗?谢谢
解决方案
我相信这取决于您如何设置该语言 - 如果您使用中间件完成了设置,那么它确实可能不适用于管理页面,因为该中间件没有加载在那里。
您可以更改在您的config/backpack/base.php
, 下使用的中间件管理页面middleware_class
。所以你可以:
A) 在基本配置文件中添加自定义中间件,例如App\Http\Middleware\SetLocaleAccordingToX
;
B) 修改现有中间件以同时更改语言环境。您会在基本配置文件中注意到,所有管理页面App\Http\Middleware\CheckIfAdmin
也都通过中间件(出于授权目的)。你可以在里面设置本地CheckIfAdmin
。
就我个人而言,我认为选项 A 更简洁 - 一个中间件,您可以在面向前端和面向管理员的页面中重复使用(如果这是您的用例)。
推荐阅读
- java - gatt.writeDescriptor() 一直返回 false:
- java - 如何区分java中的注销和超时会话
- r - R shiny 3 selectInput 与“All”选项同时添加反应性
- python - 根据关键字匹配创建新列
- python - 有没有办法在子进程和主进程之间拥有“全局”变量,以便它在两个进程中都得到更新?
- javascript - 使用 NodeJS + express 实现无限滚动。附加 HTML 标记时遇到问题
- oauth-2.0 - 无需用户交互即可访问 Google API
- puppet - 使用螺栓重新启动
- .net - 请求需要很长时间才能远程到达服务器但在本地速度很快
- forms - 产品/服务订单的大表格或小表格