Yii2 нет сообщения о результате без использования gridview

Мой контроллер:

 public function actionResults()
{

     $query = User::find();

     $admins = $query->orderBy('id')->andWhere('role_id = 1')->all();

     $searchModel = new AdminSearch();
    $dataProvider = $searchModel->search(Yii::$app->request->queryParams);

    return $this->render('results', [
        'admins' => $admins,
        'dataProvider' => $dataProvider,
        'searchModel' => $searchModel,
    ]);
}

Вид результата:

<table class="table">
<thead>
<tr>
    <th>ID</th>
    <th>Name</th>
    <th>Create Date</th>
</thead>
<tbody>
<?php foreach  ($dataProvider->models as $model){ ?>
<tr>
    <td><?= $model->username; ?></td>

    <td><?=$model->fullname; ?></td>

    <td><?=$model->email; ?></td>
    </tr>

I don't want to use Gridview to so I render the result out like that, but don't know how to throw a no result message.

Помогите мне, пожалуйста.

Спасибо


person Starite    schedule 09.03.2016    source источник


Ответы (1)


Используйте функции php isset() и empty(), чтобы проверить, есть ли данные в массиве.

  if(isset($dataProvider->models) && !empty($dataProvider->models)){
        //do you foreach loop here
    }else {
        echo 'empty';
    }
person chapskev    schedule 10.03.2016