Comment supprimer le résumé et le trieur pour une vue de grille particulière dans Yii2. Dans Yii1.1, nous pouvons le faire en définissant la propriété du modèle. En yii2 comment y parvenir?
En définissant la propriété de mise en page, nous pouvons y parvenir.
'layout'=>"{summary}\n{items}\n{pager}"
Pour modifier uniquement l'option summary
, vous pouvez utiliser:
'summary' => "{begin} - {end} {count} {totalCount} {page} {pageCount}",
Ensuite, si vous voulez vider summary
set avec une valeur de chaîne vide comme:
'summary'=> "",
et pour modifier les dispositions, vous pouvez utiliser:
'layout'=> "{summary}\n{items}\n{pager}"
Ensuite, si vous voulez vider layouts
définissez la disposition avec une valeur de chaîne vide comme:
'layout'=> "",
Donc, pour l'exemple, je pense que l'exemple de code ci-dessous peut aider à savoir comment changer et conserver GridView
table dans Yii 2:
<?= \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',
]);
},
]
],
],
]); ?>
si vous ne voulez que des éléments de grille, utilisez 'layout'=>"{items}"
si vous ne voulez utiliser qu'un résumé 'layout'=>"{summary}"
si vous ne voulez utiliser que la trieuse 'layout'=>"{pager}"
Définissez le paramètre summaryText
sur une chaîne vide:
array(
'summaryText' => '',
'dataProvider' => $model->search(),
...
[
'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'
]