【问题标题】:lumen query string filter流明查询字符串过滤器
【发布时间】:2019-09-26 11:13:38
【问题描述】:

我有一个 REST API,可用于对给定集合中的多个字段进行排序。有什么方法可以将这些转换为 URL 的查询字符串?例如:

https://example.com/users?sortBy=createdAt:asc,name:desc

这将按 createdAt 和 name 对用户进行排序。

Lumen/Laravel 是否有任何默认方式将这些转换为查询字符串参数以进行过滤。

【问题讨论】:

    标签: laravel lumen


    【解决方案1】:

    您可以使用数组作为查询参数。

    类似:

    https://example.com/users?sortby[createdAt]=asc&sortyby[name]=desc

    会给你这个对象:

    {
        "sortby": {
            "createdAt": "asc",
            "name": "desc"
        }
    }
    

    因此,现在您可以轻松地遍历此对象并构建您的查询构建器。

    【讨论】:

    • 这会起作用,但必须避免 URL 中的冗余。例如,如果要搜索的参数增加,则 URL 中使用的 sortby 会增加。
    猜你喜欢
    • 1970-01-01
    • 2011-04-21
    • 2014-09-25
    • 1970-01-01
    • 2012-09-11
    • 2016-07-16
    • 1970-01-01
    • 1970-01-01
    • 2013-08-15
    相关资源
    最近更新 更多