Yii2 GridView -生成过滤或排序的URL


Yii2 GridView - Generate filtered or sorted URL

我使用gii生成Product的CRUD页面,我可以通过index.php?r=product访问列表,在代码中,url是['/product']。现在我想访问product索引页与过滤参数和排序参数?

有什么工具或标准的方法来实现这些吗?

例如,有两个列nameprice,我想访问namelaptop的页面,并按price排序。

一般性质的回答可以给你第一个地址。您所问的问题是由框架本身组织和管理的。对于所有这些事情,Yii2提供了所有要使用的元素。唯一的问题是,所有这些元素都很多,需要一点时间来利用它们。在实践中,对于那些问你的人来说,一些活动可以通过在你的类/模型的控制器中引入适当的动作来轻松地执行,例如,在product controller中,你可以创建一个动作来拦截按名称搜索。

ActionProductByName($name) 

将调用URL

......./web/index.php?r=product/product-by-name&name=laptop

在此操作中,您可以处理将请求的数据返回到适当视图所需的代码

对于排序,您可以使用适当的查询在不同级别上进行操作,这些查询将所需的数据以所需的顺序返回给dataProvider对象,然后使用它们的视图执行这些数据的呈现。

希望这第一个答案对大家有帮助