我正在尝试创建一个默认的路由前缀。
http://localhost/heb/mycont将留在希伯来页面,而
http://localhost/mycont将导致英文页面。
Router::connect('/:language/mycont',array('controller'=>'contname','action'=>'index'),array('language'=>'[a-z]{0,3}'));
此代码允许我使用0-3字母作为语言,但它仍然需要一种语言!
任何想法如何解决? 是否可以使用默认路由?
答案 0 :(得分:3)
让我先说明我不是路由专家,但在这种情况下,你所拥有的东西是行不通的,因为路由期望语言参数;如果路线不存在,路线将不匹配。
要“修复”(引用,因为它没有真正破坏),您可能想尝试设置默认语言环境,并在AppController
中覆盖:language
值是否存在。
答案 1 :(得分:-1)
我的解决方案只是将/设置为特定语言,而其他所有内容都已标记 /:语言/
这样我没有制作重复的路线。