Cakephp 如何在Cake 3.0链接的URL中包含语言段

Cakephp 如何在Cake 3.0链接的URL中包含语言段,cakephp,routing,routes,cakephp-3.0,Cakephp,Routing,Routes,Cakephp 3.0,我需要建立一个多语言的网站,在url中使用这样的语言,但我想避免将语言编码到网站上的每个链接中。我有效地将其用于路由: $routes->connect( '/:lang/:controller/:action/*', ['prefix' => 'customer'], ['routeClass' => 'DashedRoute', 'lang' => '[a-z]{2}'] ); 对于链接,我必须这样做: $this->Html->

我需要建立一个多语言的网站,在url中使用这样的语言,但我想避免将语言编码到网站上的每个链接中。我有效地将其用于路由:

$routes->connect(
    '/:lang/:controller/:action/*',
    ['prefix' => 'customer'],
    ['routeClass' => 'DashedRoute', 'lang' => '[a-z]{2}']
);
对于链接,我必须这样做:

$this->Html->link(__('List Users'), ['lang' => 'en', 'controller' => 'users', 'action' => 'index']);
有没有什么方法可以让lang自动添加,而我可以只为链接添加

$this->Html->link(__('List Users'), ['controller' => 'users', 'action' => 'index']);

只需将
'persist'=>['lang']
添加到
$routes->connect()
语句的选项数组中。

只需将
'persist'=>['lang']
添加到
$routes->connect()语句的选项数组中。

只需将
'persist'=>['lang
添加到
$routes->connect()语句的选项数组中即可
语句。

只需将
'persist'=>['lang']
添加到
$routes->connect()的选项数组中
语句。

您可以尝试使用提供自定义路由类的my plugin来简化带有语言前缀/片段的连接路由。您可以尝试使用提供自定义路由类的my plugin来简化带有语言前缀/片段的连接路由。您可以尝试使用提供自定义路由类的my plugin来简化连接路由使用语言前缀/片段连接路由。您可以尝试使用我的插件,该插件提供自定义路由类,以简化使用语言前缀/片段连接路由。