控制器别名


在CP中, 我们可以给控制器和方法指定更友好和更短的别名

使用方法

在app配置文件中通过配置为控制器指定别名

/**
 * 路由配置
 * 'index' => 'main:index'
 * 为 main->index 指定别名为index
 *
 * 'main:hi' => 'main:index'
 * 为main控制器中的index方法指定别名hi
 * 如果为控制器和方法指定了别名,会自动使用别名
 */
'router' => array(
    'help'      =>  'help:index',
    'gonglue'   =>  'help:strategy',
    'search'    =>  'search:index',
    'report'    =>  'report:index',
    'all/list'  =>  'all:index'
)

上例中我们为控制器中的方法分别指定了更短,更友好的别名

双向解析

在CP中, 为控制器和方法指定别名以后, 会自动生成新的URL, 并不需要手动修改生成方法, 假设我们在模板中调用生成URL的方法如下:

$this->url('help:index')

这时生成的RUL如下:

http://www.domain.com/help/index

如果我们给help控制器的index方法指定一个别名以后

'router' => array(
    'help'      =>  'help:index',
)

会自动更新生成的URL为

http://www.domain.com/help

>通过路由别名你可以生成对人类更友好, 更美观的URL