[yii2] Como alterar um filtro de GridView de GET para POST

No yii1, CGridView, por padrão, se realizarmos filtros de dados usando o método POST para solicitar dados.

Enquanto no yii2, o padrão do filtro GridView usa o método GET . Alguns usuários podem se sentir desconfortáveis com o método GET por vários motivos.

Para alterar o GridView no yii2 do método GET para o método POST, você pode tentar como no exemplo a seguir.

1. View

No arquivo de visualização, adicione o widget Pjax antes e depois da grade, da seguinte forma.

	..............
	..............
	..............
	
    <?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

No controlador do switchOn the swith controller

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

com

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

É bastante fácil, não é? ???? Boa sorte…É bastante fácil, não é? ???? Boa sorte…

Últimos artigos