我有这些网址
cz/kontroler/akce
en/controller/action
使用可转换路线并像魅力一样工作。但问题是,当你写的时候
cz/controller/akce
它也可以。
通常在你有
时cz/something-in-czech
en/something-in-english
到someController的路由仍然可以正常工作
cz/some
en/some
因为它确实是控制器的名称。
如何解决这种双重内容问题?
答案 0 :(得分:0)
您可以创建使用preDispatch方法的plugin。在执行请求之前,您可以分析所请求的URL并检查所请求的语言是否与URL中的params的语言相匹配(我的意思是控制器和操作)。如果没有,您可以将用户重定向到符合给定语言的URL(基本上您将翻译控制器和操作,然后将用户重定向到正确的URL)。