如何像cardview一样显示Yii2索引中的数据

How to displaying the datas in Yii2 index like cardview

我正在尝试在我的 Yii2 高级项目中显示数据(例如:projects table),我只需要知道如何显示这些东西 我的索引?

我的意思是,我在互联网上找不到任何关于此的教程或讨论。

但有一点不同,我知道我们可以使用 DetailView::widgetGridview widget 或类似的东西,但是,我应该把这些代码放在哪里?

我的意思是,如何将这些小部件用于每个项目,如卡片视图。 完全如下:

https://play.google.com/store

如您所见,每个项目都有卡片视图和其他东西。

但是,我们如何在索引中使用这些小部件并显示这些数据 cardview

如有任何帮助,我将不胜感激。

gridview 最简单的方法是基于 raw

回调函数的结果管理

给定一个网格视图,你可以用适当的 html 每个单元格

    <?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
        ['class' => 'yii\grid\SerialColumn'],
        [
            'attribute' => 'yuor_attibute', // you can use a dummy attribute in this case
            'label' => 'your label',
            'format' => 'raw',
            'value' => function ($model) {                      
                return "<a href='./yourPath/view?id=". $model->your_column ."'  class = 'btn  btn-success glyphicon glyphicon-user ' > </a>";
            },
            'contentOptions' => ['style' => 'width:80px; text-align: center;'],
            'headerOptions' => ['style' => 'text-align: center;'],
        ],
        [
            'attribute' => 'yuor_attibute', // you can use a dummy attribute in this case
            'label' => 'your  2 label',
            'format' => 'raw',
            'value' => function ($model) {                      
                return "<img src='./yourPath/image.jpg">";
            },
            'contentOptions' => ['style' => 'width:400; height 400 px;'],
            'headerOptions' => ['style' => 'text-align: center;'],
        ],
        [
            'attribute' => 'yuor_attibute', // you can use a dummy attribute in this case
            'label' => 'your  3 label',
            'format' => 'raw',
            'value' => function ($model) {                      
                return "< ****the html you prefer ***>";
            },
            'contentOptions' => ['style' => 'width:400; height 400 px;'],
            'headerOptions' => ['style' => 'text-align: center;'],
        ],
       .......
       ......

通过这种方式,您可以根据与您的模型是否相关的值,使用您喜欢的内容轻松构建 grdiview/table。