在gridview中的Yii2自定义sql查询

fab*_*bio 5 php sql gridview yii yii2

我对Yii2很新.我正在使用先进的结构

我需要在不使用模型的情况下在视图中显示自定义sql结果,因为我想显示sql视图.

的index.php

<?= GridView::widget([
       'dataProvider' => $dataProvider,
       'columns' => [
            ['class' => 'yii\grid\SerialColumn'],
            'COD_RISORSA',
            [
                'label' =>"Nome",
                'attribute' => 'NOME',
                'value'=>function($data){
                    return $data["NOME"];
                }
            ],
            'COGNOME',
            ['class' => 'yii\grid\ActionColumn'],
        ],
   ]); ?>
Run Code Online (Sandbox Code Playgroud)

VRisorseController.php

public function actionIndex()
{

    $totalCount = Yii::$app->db->createCommand('SELECT COUNT(*) FROM v_risorse')->queryScalar();

    $dataProvider = new SqlDataProvider([
        'sql' => 'SELECT * FROM v_risorse',
        'totalCount' => $totalCount,
        'sort' =>false,
        'pagination' => [
            'pageSize' => 10,
        ],
    ]);

    return $this->render('index', [
        'dataProvider' => $dataProvider,
    ]);
}
Run Code Online (Sandbox Code Playgroud)

在以下网址: http://localhost/advanced/frontend/web/index.php?r = vrisorse%2Findex

我有错误:

不支持 - yii\base\NotSupportedException仅对整数值支持消息格式"number".您必须安装PHP intl扩展才能使用此功能.1.在C:\ xampp\htdocs\advanced\vendor\yiisoft\yii2\i18n\MessageFormatter.php

我试图评论gridview中的所有列,错误似乎与$dataProvider变量有关

'COD_RISORSA','NOME', 'COGNOME' 是选择的列.

小智 0

你需要取消注释

扩展名=php_mysql.dll

扩展名=php_mysqli.dll

在你的 php.ini 中,让我知道是否有效