如何创建此urlManager规则?

时间:2015-07-30 09:20:04

标签: php yii yii2 yii-url-manager

首先,请原谅我的低级英语。

在名为webController的控制器中执行以下操作:

public function actionPage($view = 'index')
{
  try {
    return $this->render('site/page/' . $view);
  } catch (InvalidParamException $e) {
    throw new HttpException(404);
  }
}

我需要一条规则来执行以下操作:

localhost/cookies

equals

localhost/?r=web/page&view=cookiesyprivacidad

localhost/faq

equals

localhost/?r=web/page&view=preguntas

这样的事情:

'rules'=>array(
   'cookies'=>'web/page'
)

但添加固定参数。

2 个答案:

答案 0 :(得分:0)

如果我是你,我会让事情变得简单。我会为控制器中的每个视图创建一个动作,并使用urlmanager路由到适当的控制器动作

'rules'=>array(
   'cookies'=>'page/cookiesyprivacidad',
   'faq'=>'page/preguntas',
)


public function actionCookiesyprivacidad()
{
  try {
    return $this->render('site/page/cookiesyprivacidad');
  } catch (InvalidParamException $e) {
  throw new HttpException(404);
 }
}

 public function actionPreguntas()
{
  try {
    return $this->render('site/page/preguntas');
  } catch (InvalidParamException $e) {
  throw new HttpException(404);
 }
}

答案 1 :(得分:0)

你需要这个

'urlManager' => array(
  'rules' => array(
    <view:(cookies|faq)>' => 'web/page'
  )
)