首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在taxon_id API中使用SpreeCommerce搜索产品

在taxon_id API中使用SpreeCommerce搜索产品
EN

Stack Overflow用户
提问于 2014-06-26 18:03:21
回答 1查看 1.9K关注 0票数 2

我试图使用SpreeCommerce作为过滤器从taxon_ids API中搜索产品。搜索api使用ransack宝石谓词进行搜索。我试过:

代码语言:javascript
运行
复制
/api/products?q[taxon_ids_cont]=x

(其中x是一个分类单元的id )。我也尝试过:

代码语言:javascript
运行
复制
/api/products?q[taxon_ids_in]=x

并且都不需要过滤就可以返回所有产品的json。我应该在products端点上使用哪些参数来获取由taxon_ids过滤的产品,或者如何解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-29 13:46:25

我找到了解决办法。SpreeCommerce API在分类法控制器中有一个名为products的操作,它可以通过/api/taxons/products端点访问。

代码语言:javascript
运行
复制
def products
    # Returns the products sorted by their position with the classification
    # Products#index does not do the sorting.
    taxon = Spree::Taxon.find(params[:id])
    @products = taxon.products.ransack(params[:q]).result
    @products = @products.page(params[:page]).per(500 || params[:per_page])
    render "spree/api/products/index"
  end

端点接受参数id,并可选择接受:q参数,即ransack创业板谓词

例如,url:

代码语言:javascript
运行
复制
/api/taxons/products?id=1

将返回id为1的分类法下所有产品的json。

代码语言:javascript
运行
复制
/api/taxons/products?id=1&q[name_cont]=Bag

将返回分类单元下的产品json,其id为1,它们的名称中包含单词袋。我不知道为什么官方API指南缺少这条信息。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24437265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档