如何使用 Shopify_api gem 使用默认变体数据创建产品
How to create product with default variant data using Shopify_api gem
我开始使用 shopify api ruby gem 并且正准备创建产品 atm,但我已经陷入了一些非常基本的事情......如果我想发送我的价格和库存数据,我无法创建(none-变体)产品。
如果我是对的,没有变体的产品实际上有一个带有 sku、价格、库存等的 'Default Title' 变体。但我想不出正确的方法...这我现在拥有的是:
new_product = ShopifyAPI::Product.new
new_product.title = "Burton Custom Freestlye 151"
new_product.product_type = "Snowboard"
new_product.vendor = "Burton"
new_product.published = "false"
new_product.save
new_product.variants << ShopifyAPI::Variant.new(
:option1 => "Default Title",
:price => 12.95,
:inventory_management => "shopify",
:inventory_quantity => 10
)
new_product.save
但这会导致产品没有任何默认变体数据。
尝试了几件事,但我没有更进一步(比如这个:,也没有用)......而且 shopify 文档也不是很有帮助。
但我相信你们中的任何人都可以帮助我解决这个笨拙的问题......对吗?
已经可以这样解决了:
variant = new_product.variants
variant[0].price = $price
variant[0].sku = $sku
variant[0].weight = $g
variant[0].weight_unit = "g"
variant[0].inventory_quantity = $qty
variant[0].inventory_management = "shopify"
new_product.save
我想——如果我错了请纠正我——这确实有效,因为默认变体已经存在,因此我必须访问它 (variant[0]
),而在我的问题代码中我试图创建一个新的。
我开始使用 shopify api ruby gem 并且正准备创建产品 atm,但我已经陷入了一些非常基本的事情......如果我想发送我的价格和库存数据,我无法创建(none-变体)产品。
如果我是对的,没有变体的产品实际上有一个带有 sku、价格、库存等的 'Default Title' 变体。但我想不出正确的方法...这我现在拥有的是:
new_product = ShopifyAPI::Product.new
new_product.title = "Burton Custom Freestlye 151"
new_product.product_type = "Snowboard"
new_product.vendor = "Burton"
new_product.published = "false"
new_product.save
new_product.variants << ShopifyAPI::Variant.new(
:option1 => "Default Title",
:price => 12.95,
:inventory_management => "shopify",
:inventory_quantity => 10
)
new_product.save
但这会导致产品没有任何默认变体数据。
尝试了几件事,但我没有更进一步(比如这个:,也没有用)......而且 shopify 文档也不是很有帮助。
但我相信你们中的任何人都可以帮助我解决这个笨拙的问题......对吗?
已经可以这样解决了:
variant = new_product.variants
variant[0].price = $price
variant[0].sku = $sku
variant[0].weight = $g
variant[0].weight_unit = "g"
variant[0].inventory_quantity = $qty
variant[0].inventory_management = "shopify"
new_product.save
我想——如果我错了请纠正我——这确实有效,因为默认变体已经存在,因此我必须访问它 (variant[0]
),而在我的问题代码中我试图创建一个新的。