将参数传递给yii2中的动作

时间:2015-05-11 10:59:41

标签: php yii2

我已在网址管理器中添加此规则

 'rules' => array(
          'blog/<id:\d+>' => 'blog/index',
          '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
          '<controller:\w+>/<id:\d+>' => '<controller>/view',
          '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
       ) 

当我请求url mysite.com/blog/index/1没有错误时,调用了博客控制器的动作索引。但是,当我请求mysite.com/blog时,它显示错误页面未找到。但我仍然希望它调用博客控制器的动作索引。

2 个答案:

答案 0 :(得分:0)

博客/ 博客/指数 博客/索引/ 1 由于其默认行为,所有上述请求都会将您重定向到索引页面。

但Blog / 1会创建一个名为&#34; 1&#34;。

的动作请求

答案 1 :(得分:0)

请尝试以下url manager的配置,尝试设置'urlSuffix' => '/'并告诉我

'urlManager' => array(
        'cacheID' => false,
        'caseSensitive' => true,
        'showScriptName' => false,
        'urlFormat' => 'path',
        'urlSuffix' => '/',
        'useStrictParsing' => true,
        'rules' => array(
               'blog/<id:\d+>' => 'blog/index',
               '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
               '<controller:\w+>/<id:\d+>' => '<controller>/view',
               '<controller:\w+>/<action:\w+>' => '<controller>/<action>',
            ) 
)