我在 yii2 中设置了默认的 REST API,当我使用 get 方法运行 "api/web/v1/users" 时,它会为我提供用户列表。
有没有办法对输出数据进行排序,例如“api/web/v1/users?sort=name desc”?
最佳答案
无需为其编写代码。 Yii 已经通过在属性名称中添加负号来支持逆排序,如下所示 here [Yii core code] .
除非 name 未包含在模型的安全属性列表中,否则您可以仅使用 sort=-name 而不是 sort=name desc :
api/web/v1/users?sort=-name
- 注意:您还可以在逗号内进行链式排序:api/web/v1/users?sort=-name,id,-date
否则,如果您的字段不是安全属性或者需要高级排序,则您必须重写 IndexAction::prepareDataProvider
或将其配置为返回 activeDataProvider其中指定了您的sorting应该管用。
关于yii2 - 在默认 REST API 中对数据进行排序 - Yii2 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26884449/