Yii 来自gridview的getQueryParams(';在搜索后创建url,并在GridView中为锚定标记创建另一个具有相同参数的url

Yii 来自gridview的getQueryParams(';在搜索后创建url,并在GridView中为锚定标记创建另一个具有相同参数的url,yii,yii2,pjax,Yii,Yii2,Pjax,我正在使用GridView::widget,当我在GridView内的搜索框中输入任何内容时,它正在创建url,如下所示: /v2/backend/web/index.php/agency/index?AgencySearch%5Bgovt_name%5D=&AgencySearch%5Bcity%5D=&AgencySearch%5Bmember_id%5D=22 /v2/backend/web/index.php/agency/33/change-status/11?1%5

我正在使用
GridView::widget
,当我在GridView内的搜索框中输入任何内容时,它正在创建url,如下所示:

/v2/backend/web/index.php/agency/index?AgencySearch%5Bgovt_name%5D=&AgencySearch%5Bcity%5D=&AgencySearch%5Bmember_id%5D=22
/v2/backend/web/index.php/agency/33/change-status/11?1%5BAgencySearch%5D%5Bgovt_name%5D=&1%5BAgencySearch%5D%5Bcity%5D=&1%5BAgencySearch%5D%5Bmember_id%5D=22
现在,我需要将这些参数传递到GridView状态列下状态图标中的url

echo Url::to(['agency/change-status', 'id' => 33, 'set' => 11, Yii::$app->request->getQueryParams()]);
上面的代码正在创建url,如下所示:

/v2/backend/web/index.php/agency/index?AgencySearch%5Bgovt_name%5D=&AgencySearch%5Bcity%5D=&AgencySearch%5Bmember_id%5D=22
/v2/backend/web/index.php/agency/33/change-status/11?1%5BAgencySearch%5D%5Bgovt_name%5D=&1%5BAgencySearch%5D%5Bcity%5D=&1%5BAgencySearch%5D%5Bmember_id%5D=22
这是有意义的,因为
Yii::$app->request->getQueryParams()
是一个数组。注意
1
内部url
更改状态/11?1%5AgencySearch

有没有最简单的Yii方法来实现我所需要的,而不是按照字符串中的
Url::to()
修改
Yii::$app->request->getQueryParams()

我正在尝试传递参数,以便在状态更改pjax请求后在网格上再次加载内容时保持gridview的状态。

用于组合路由和参数以及搜索参数

$params = array_merge(['agency/change-status', 'id' => 33, 'set' => 11], Yii::$app->request->getQueryParams());
echo Url::to($params);

很好,通过这种方式进行数组合并更有意义,我只是在考虑合并参数,但直接错过了URL部分。