0

我正在生成一个链接(这是在语言设置为“fre”时):

$html->link('About', array('controller' => 'pages', 'action' => 'about', 'language'=> 'fre')) ;

如上所示,我还有一个语言 [eng|fre] 的子目录,可以是任何一种语言:

我是这样路由的:

Router::connect('/:language/:controller/:action/*',
                   array(),
                   array('language' => 'eng|fre'));

// this worked before the language subdomain
Router::connect('/about',array('controller'=>'pages','action'=>'about'));

我遇到的问题是,我希望网址是:

/eng/about
/fre/about

但显然它们的出现是:

/eng/pages/about
/fre/pages/about
4

2 回答 2

1

我认为假设这应该有效

Router::connect('/:language/about',array(
    'controller'=>'pages',
    'action'=>'about',
    'language' => 'eng|fre'
));

编辑:如果所有 20 都是页面,你可以尝试类似

Router::connect('/:language/:action',array(
    'controller'=>'pages',
    'action' => 'about|contact|something|else',
    'language' => 'eng|fre'
));
于 2013-05-24T12:55:12.363 回答
0

这允许您对任何页面使用任何 3 个字符的语言代码:

Router::connect(
    '/:language/:controller/:action/*',
    array(),
    array('language'=>'[a-z]{3}')
);
于 2013-05-24T13:33:00.113 回答