首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过API和ruby创建优惠券返回错误: woocommerce_api_missing_coupon_data

通过API和ruby创建优惠券返回错误: woocommerce_api_missing_coupon_data
EN

Stack Overflow用户
提问于 2019-07-17 21:49:16
回答 1查看 229关注 0票数 8

我正在尝试通过我的Rails4应用程序中的rest api使用本页面文档中的示例代码创建优惠券:https://woocommerce.github.io/woocommerce-rest-api-docs/?ruby#create-a-coupon

下面是我使用的代码:

代码语言:javascript
复制
 data = {
      code: "10off",
      discount_type: "percent",
      amount: "10",
      individual_use: true,
      exclude_sale_items: true,
      minimum_amount: "100.00"
    }
woocommerce.post("coupons", data).parsed_response

我希望它从API返回一个成功的响应,但我得到的却是{"errors"=>[{"code"=>"woocommerce_api_missing_coupon_data", "message"=>"No coupon data specified to create coupon"}]}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-23 07:06:50

下面的段落展示了它是如何工作的,至少在V2和V3接口中是这样的。

参数/数据哈希包含优惠券属性,请参阅v3 documentation

代码语言:javascript
复制
data = {
  coupon: {
    code: "new-coupon"
    ...
  }
}

经过一些研究,我仍然不确定接口描述中的示例是正确的,因为您可以看到here

以下代码可用于V2和V3,没有其他代码可用,V3已于13天前更新。当‘优惠券’在数据中不可用时,会引发错误:

代码语言:javascript
复制
if ( ! isset( $data['coupon'] ) ) {
 throw new WC_API_Exception( 'woocommerce_api_missing_coupon_data', sprintf( __( 'No %1$s data specified to create %1$s', 'woocommerce' ), 'coupon' ), 400 );
}

我建议尝试使用以下代码:

代码语言:javascript
复制
data = {
  coupon: {
      code: "10off",
      discount_type: "percent",
      amount: "10",
      individual_use: true,
      exclude_sale_items: true,
      minimum_amount: "100.00"
  }
}
woocommerce.post("coupons", data).parsed_response

如果这行得通,我会暂时坚持使用V3 documentation,或者提出一个问题,例如,通过使用Woocommerce创建一个工单。也许他们的文档团队工作得比开发更快:)

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

https://stackoverflow.com/questions/57077492

复制
相关文章

相似问题

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