当有1个结果时,从搜索中渲染详细信息视图页面yii2

时间:2016-09-09 06:03:12

标签: yii2 yii2-advanced-app yii2-basic-app

在yii2中,搜索后是否只有1个结果如何自动进入详细视图页面。

谢谢。

2 个答案:

答案 0 :(得分:1)

$dataprovider后的控制器中

$count=$dataProvider->getTotalCount();

if($count==1){

$dataProvider->getModels();
// get id and redirect view
//redirect to view

}else{

//redirect to gridview or listview

}

答案 1 :(得分:0)

我认为这是基于yii2 ..

的基本用法
     $searchModel = new PostSearch();   // Search Model can be created by gii 
    $dataProvider = $searchModel->search(Yii::$app->request->queryParams);

        $count=    $dataProvider->getTotalCount();

              if($count==1){

                    $a =   $dataProvider->getModels();
                     $id = $a[0]['id'] ;    // accessing 2nd level array elements   or $dataProvider->getModels()[0]['id'];

                     return $this->render('view', [
                         'model' => $this->findModel($id), //findModel($id) is protected function in the controller
                     ]);

              }