Creating coupon through API and ruby returns error: woocommerce_api_missing_coupon_data
Creating coupon through API and ruby returns error: woocommerce_api_missing_coupon_data
我正在尝试使用本页文档中的示例代码从我的 rails 4 应用中的其余 api 创建优惠券:https://woocommerce.github.io/woocommerce-rest-api-docs/?ruby#create-a-coupon
这是我使用的代码:
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
我希望它 return 来自 API 的成功响应而不是 {"errors"=>[{"code"=>"woocommerce_api_missing_coupon_data", "message"=>"No coupon data specified to create coupon"}]}
下面的段落展示了它是如何工作的,至少在 API V2 和 V3 中是这样。
参数/数据散列包含优惠券属性,参见v3 documentation:
data = {
coupon: {
code: "new-coupon"
...
}
}
经过一些研究,我仍然不确定 API 描述中的示例是否正确,如您所见 here。
以下代码适用于 V2 和 V3,没有其他代码可用,V3 已于 13 天前更新。当 'coupon' 在数据中不可用时引发错误:
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 );
}
我建议尝试使用此代码:
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 创建票证。也许他们的文档团队比开发团队工作得更快:)
我正在尝试使用本页文档中的示例代码从我的 rails 4 应用中的其余 api 创建优惠券:https://woocommerce.github.io/woocommerce-rest-api-docs/?ruby#create-a-coupon
这是我使用的代码:
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
我希望它 return 来自 API 的成功响应而不是 {"errors"=>[{"code"=>"woocommerce_api_missing_coupon_data", "message"=>"No coupon data specified to create coupon"}]}
下面的段落展示了它是如何工作的,至少在 API V2 和 V3 中是这样。
参数/数据散列包含优惠券属性,参见v3 documentation:
data = {
coupon: {
code: "new-coupon"
...
}
}
经过一些研究,我仍然不确定 API 描述中的示例是否正确,如您所见 here。
以下代码适用于 V2 和 V3,没有其他代码可用,V3 已于 13 天前更新。当 'coupon' 在数据中不可用时引发错误:
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 );
}
我建议尝试使用此代码:
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 创建票证。也许他们的文档团队比开发团队工作得更快:)