php - Yii2 में ग्रिड व्यू को कस्टमाइज़ करें




gridview cgridview (4)

Yii2 में किसी विशेष ग्रिड व्यू के लिए सारांश और सॉर्टर को कैसे हटाएं। Yii1.1 में हम टेम्पलेट संपत्ति सेट करके ऐसा कर सकते हैं। Yii2 में यह कैसे प्राप्त करें?


खाली स्ट्रिंग पर summaryText सेट करें:

array(
    'summaryText' => '',
    'dataProvider' => $model->search(),
...

यदि आप केवल ग्रिड आइटम 'layout'=>"{items}" का उपयोग करना चाहते हैं

यदि आप केवल सारांश 'layout'=>"{summary}" उपयोग करना चाहते हैं

यदि आप केवल छोटे उपयोग 'layout'=>"{pager}"


केवल summary विकल्प बदलने के लिए, आप इसका उपयोग कर सकते हैं:

'summary' => "{begin} - {end} {count} {totalCount} {page} {pageCount}",

फिर, यदि आप खाली स्ट्रिंग मान के साथ summary सेट खाली करना चाहते हैं जैसे:

'summary'=> "",

और उन लेआउट को बदलने के लिए जिनका आप उपयोग कर सकते हैं:

'layout'=> "{summary}\n{items}\n{pager}"

फिर, यदि आप खाली स्ट्रिंग मान के साथ layouts सेट लेआउट खाली करना चाहते हैं जैसे:

'layout'=> "",

रेफरी लिंक

रेफरी लिंक

तो, नमूना के लिए, मुझे लगता है कि नमूना कोड बोलने में मदद मिल सकती है कि Yii 2 में ग्रिड GridView तालिका को कैसे बदलें और संरक्षित करें:

                <?= \yii\grid\GridView::widget([
                'id' => 'table',
                'dataProvider' => $dataProvider,
                'layout'=>"{sorter}\n{pager}\n{summary}\n{items}",
                'summary' => "Showing {begin} - {end} of {totalCount} items",
                'tableOptions' => ['class' => 'table  table-bordered table-hover'],
                'rowOptions' => function ($model, $key, $index, $grid) {
                    return [
                        'style' => "cursor: pointer",
                        'onclick' => 'location.href="'
                            . Yii::$app->urlManager->createUrl('test/index')
                            . '?id="+(this.id);',
                    ];
                },
                'columns' => [
                    [
                        'class' => 'yii\grid\SerialColumn',
                        'contentOptions' => ['style' => 'width: 20px;', 'class' => 'text-center'],
                    ],
                    [
                        'class' => 'yii\grid\DataColumn',
                        'attribute' => 'date',
                        'headerOptions' => ['class' => 'text-center'],
                        'label' => 'Date',
                        'contentOptions' => ['style' => 'width: 130px;', 'class' => 'text-center'],
                    ],
                        'template' => '{view}',
                        'buttons' => [
                            'view' => function ($url, $model) {
                                return \yii\helpers\Html::a('<div class="text-center"><em data-toggle="tooltip"
                                                            data-placement="top" title="more detail"
                                                            class="fa fa-external-link-square text-warning"></em></div>',
                                    (new yii\grid\ActionColumn())->createUrl('test/index', $model, $model['id'], 1), [
                                        'title' => Yii::t('yii', 'view'),
                                        'data-method' => 'post',
                                        'data-pjax' => '0',
                                    ]);
                            },
                        ]
                    ],
                ],
            ]); ?>

[
    'class' => 'yii\grid\ActionColumn',
    'buttons' =>
        [
            'update'=>function($url,$model,$key)
            {
                return Html::a( "update" , $url ); //use Url::to() in order to change $url
            },
            'view'=>function($url,$model,$key)
            {
                return Html::a( "update" , $url ); //use Url::to() in order to change $url
            },
            'delete'=>function($url,$model,$key)
            {
                return Html::a( "update" , $url, [
                    'class' => 'btn btn-lg btn-primary',
                    'data' => [
                        'method' => 'post',
                        'params' => ['derp' => 'herp'], // <- extra level
                    ],
                ] ); //use Url::to() in order to change $url
            }
        ],
    'template' => '<div class="column-buttons">
                                        <span>{update}</span>
                                        <span>{view}</span>
                                        <span>{delete}</span>
                                    </div>',
    'header' => 'Actions'
]




cgridview