【问题标题】:Sort Order of Shopify REST CollectionsShopify REST 集合的排序顺序
【发布时间】:2012-09-22 00:22:20
【问题描述】:

试图确定 Shopify 的 REST 集合的排序顺序。具体来说,我目前正在与订单和客户合作。

我发现这个 closed thread 讨论了对集合进行排序的能力,而 API 文档根本没有提到 orderscustomers

但是,客户有一个记录在案的搜索 API,其中确实有一个订单参数作为选项。我不确定是否可以将它用作常规列表 API 调用的替代品。例如,这似乎无法正常工作 - 它返回多个结果。

/admin/customers/search.json?query=&limit=1

订单没有记录在案的搜索端点,但点击时我确实得到了响应

/admin/orders/search.json?query=&limit=1

尽管它与客户搜索端点存在相同的问题。我发现 this thread 说订单总是按日期从最新到最新返回 - 并检查我现在得到的响应 似乎 是真的,尽管我可以发誓我已经看到他们来了以不同的顺序返回,它几乎似乎是不确定的。

想知道是否确实如此,对于客户也是如此。我似乎让他们以created_at 的顺序返回给客户升序。总是这样吗?

此外,客户和订单的 ID 似乎不在 created_at 订单中,这很奇怪,因为他们的几乎所有集合中都有 since_id 参数(我发现并迅速构建了我的增量拉动战略)。我想我必须改用created_at

【问题讨论】:

    标签: rest shopify


    【解决方案1】:

    您链接到的主题(除了非常旧)是指 Collections(带有大写 C),这是 Shopify 中定义产品组的方式(例如鞋子、外套、帽子等)。

    如果未提供 since_id 参数,则您所指的“集合”(客户、产品、订单等)按日期降序(即最新的在前)返回,如果提供,则按升序返回提供。请注意,这应该对应于降序的 id 排序,无论如何这就是这个想法,因为它允许您使用 since_id 正确分页(就像您正在做的那样)。

    仔细检查您的订单 ID 是否有问题,如果是,请发布您看到它的商店域名以及订单 ID 样本,以便我们进行调查。

    【讨论】:

    • 谢谢大卫。因此,当提供since_id 时,它似乎以升序返回结果,否则以降序返回。我的域名是 kohler-jerde2431.myshopify.com
    • 你能确认这是预期的吗?
    • 你是对的。指定 since_id 会翻转排序顺序,因此您将在指定 id 之后获得第一个 x 结果,其中 x 是您通过调用传递的 limit 参数。
    • 如果应用了 any 过滤器,它们是否按升序排列?我需要将查询从使用since_id 更改为使用updated_at_min。它确实出现是按升序排列的,只是想确认一下。
    • 我在检索订单数据时遇到了类似的问题 - 对于 since_id,我得到了一个未指定的排序(既不是升序也不是降序,但对于 created_atupdated_at 和 id 值都是混合的) .我最终使用了created_at_max(似乎最先返回最新订单)和分页。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-30
    • 2021-12-18
    • 2019-08-01
    • 2020-01-08
    相关资源
    最近更新 更多