我遇到问题 - 无法使用ShopifyAPI更新变体的价格..
在更新变体的价格时,它会给出错误
在'<'之后@remote_errors =#< \ ActiveResource :: ResourceInvalid:失败。响应代码= 422.响应消息=不可处理的实体。>,@ validation_context = nil,@ error =#< \ ActiveResource ::错误:0x000000029eb1d0 ...>&gt ;, @messages = {:base => [ “选项不是唯一的”]}
'\''需要显示错误,否则堆栈溢出会隐藏错误。
另一个问题的要求
在生产商店,请求ID为“38f5c3b3b7bdf4433724a845c6df4571”
在测试商店,请求ID是“6050f165586b631e81b840dc0e1e6807”
测试商店的变种价格变动
p = ShopifyAPI::Product.last
v = p.variants.first
v.price = "8.00"
v.save
变体的初始价格=“9.00”
返回 false,错误 @messages = {:base => [“选项不唯一”]}
请求ID 978ad18483f40ff3946df18df0a9d1d8
。
。
直播商店的变种价格变动
p = ShopifyAPI::Product.first
p.variants[0].price = "24.65"
p.save
变量的初始价格=“25.65”
返回为true,但价格未更改
请求id a9a798b631e3dd10fc81b723f2883af1
。
。
通过测试商店的产品实现不同的价格变动
p = ShopifyAPI::Product.first
p.variants[0].price = "8.00"
p.save
变量的初始价格=“7.00”
返回 true且价格已更新
请求ID 7d995f6f6ed3bf515e69a1640f27f44a
。
。
通过实体店的产品变更价格
p = ShopifyAPI::Product.last
v = p.variants.first
v.price = "4.00"
v.save
变量的初始价格=“3.00”
返回 false,错误 @messages = {:base => [“选项不唯一”]}
请求id c6aaa5b65576eb4ec0d89715d25b787e
答案 0 :(得分:3)
@messages={:base=>["Options are not unique"]}
那是你的问题。查看您正在使用POST
提交请求的日志,该请求用于创建新对象。 Shopify认识到已经存在具有指定选项的变体并且拒绝创建新选项。
如果您使用PUT
作为您的HTTP方法,Shopify会将此正确解释为更新,一切都应该没问题。
答案 1 :(得分:0)
这是ActiveResource 3.1 +中的错误。
我已经开了ActiveResource pull request,但我现在还在等待回复。
我对shopify_api v3.0.1中的此错误有committed a workaround,因此升级此gem将解决此问题。