Yii2 学习笔记之 GridView DetailView

avatar
作者
猴君
阅读量:7

Yii2中的GridView和DetailView是两个非常实用的小部件,用于展示数据。GridView用于展示多条数据,而DetailView用于展示单条数据的详细信息。

GridView的使用非常简单,首先需要在控制器中查询需要展示的数据,并将数据传递给视图:

public function actionIndex() { $dataProvider = new ActiveDataProvider([ 'query' => ModelName::find(), ]); return $this->render('index', [ 'dataProvider' => $dataProvider, ]); } 

然后,在视图中使用GridView小部件来展示数据:

<?= GridView::widget([ 'dataProvider' => $dataProvider, 'columns' => [ 'id', 'name', 'email', 'created_at:datetime', 'updated_at:datetime', [ 'class' => 'yii\grid\ActionColumn', 'template' => '{view} {update} {delete}', ], ], ]) ?> 

上述代码中,dataProvider是GridView的数据提供者,columns定义了要展示的列。其中,created_at和updated_at使用了datetime格式来展示数据,并且使用了ActionColumn来展示操作按钮。

DetailView的使用也非常简单,同样需要在控制器中查询需要展示的数据,并将数据传递给视图:

public function actionView($id) { $model = ModelName::findOne($id); return $this->render('view', [ 'model' => $model, ]); } 

然后,在视图中使用DetailView小部件来展示数据:

<?= DetailView::widget([ 'model' => $model, 'attributes' => [ 'id', 'name', 'email', 'created_at:datetime', 'updated_at:datetime', ], ]) ?> 

上述代码中,model是DetailView的数据模型,attributes定义了要展示的属性。

通过以上简单的使用,我们可以很方便地在Yii2中展示数据,并提供相应的操作按钮和详细信息。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!