如何更改控制器中的url查询

时间:2014-01-03 06:45:31

标签: yii yii-components

我想更改控制器请求的页面地址。 例如:当提示网站/修改时,返回网站/编辑/ 12 其中12 - 是一些模型。 当然我可以使用重定向,但可以这样做的方法是不使用重定向。 我的片段:

    public function actionEdit($id = null){
         if(!$id){
    $model = Portfolio::model()->createEmpty();
    $this->redirect('site/edit'.$model->id);// I think that redirect is bad
    Yii::app()->end();
      }
   // ... etc logic
     }

2 个答案:

答案 0 :(得分:0)

public function actionEdit($id = 0){
    if($id == 0){
       $this->redirect('/site/edit/12');
       exit();
    }
}

OR

public function actionEdit($id = 0){
    if($id == 0){
       $id = 12;
    }
}

答案 1 :(得分:0)

您应该使用数组:

$this->redirect(array('site/edit','id'=>$model->id));

如果您想在网址中隐藏“ID”,请在配置文件中添加网址规则。