【发布时间】:2019-10-30 23:14:17
【问题描述】:
如果我有一批如下所示的路线:
/{location}/catalog
/{location}/search
等等
会话始终具有“位置”属性(自动识别用户位置的别名,例如城市)。因此,要使用 {location} 参数生成每条路线,我需要这样做
{ location: session.get('location') }
有没有办法自动做到这一点?我可以覆盖默认的 UrlGenerator 并将@session 注入其中吗?
【问题讨论】:
-
我有使用 twig 的解决方案。我用注入的“会话”和“路由器”定义了一个树枝扩展,并使用合并的参数创建了自定义的“location_path”函数。但我必须替换所有模板中的 path() ,这不是我认为的最佳解决方案。