[yii2] Wie man einen GridView-Filter von GET auf POST ändert

In yii1, CGridView, standardmäßig, wenn wir Filter von Daten mit der POST-Methode durchführen, um Daten anzufordern.

Bei yii2 verwendet der GridView-Filter standardmäßig die GET -Methode. Einige Benutzer fühlen sich aus verschiedenen Gründen mit der GET-Methode unwohl.

Um GridView auf yii2 von der GET- auf die POST-Methode umzustellen, können Sie es wie im folgenden Beispiel versuchen.

1. Siehe

Fügen Sie in der View-Datei das Pjax-Widget vor und nach dem Grid ein, etwa so.

	..............
	..............
	..............
	
    <?php yiiwidgetsPjax::begin(['id' => 'some-id-you-like',

'timeout' => false,

'enablePushState' = > false,

'clientOptions' => ['method' => 'POST'] ]); 
		
?>

    <?= GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' = > $searchModel,
        'columns' => [
            ..............
			..............
            ..............
        ],
    ]); 
	?>

    <?php 
	
	yiiwidgetsPjax::end(); 
	
	?>

..............
	..............
	..............

2. Controller

Auf der Weichensteuerung

$dataProvider = $searchModel->search(Yii::$app->request->queryParams);

mit

$dataProvider = $searchModel->search(Yii::$app->request->post());

Es ist ganz einfach, nicht wahr? ???? Viel Glück…

VERWANDTE ARTIKEL

Neueste Artikel