【发布时间】:2015-08-23 07:21:41
【问题描述】:
我正在尝试通过 ruby(而不是 rails)上传产品。我已经通过 API 上传了 100 多种产品,尽管我无法上传具有多个选项值的产品。即使我分配了三个选项值,它也不会填充其他两个。
这是脚本:
require 'shopify_api'
require 'open-uri'
require 'json'
begin_time = Time.now
shop_url = "*https*(yes I know the * are their)://-YouWish-:-I'dShareNakedPics-@dev-tactical.myshopify.com/admin/products.json"
include ShopifyAPI
ShopifyAPI::Base.site ="*https*://-YouWish-:-I'dShareNakedPics-@dev-tactical.myshopify.com/admin/"
raw_product_data = JSON.parse(open('omg.json') {|f| f.read }.force_encoding('UTF-8'))
raw_product_data_size = raw_product_data.size
puts '========================================================================='
puts "#{raw_product_data_size} seconds till explosion. assistance
needed..."
puts '-------------------------------------------------------------------------'
single_product_begin_time = Time.now
# Create new product
new_product = ShopifyAPI::Product.new
new_product.title = "Variants Suck"
new_product.body_html = "So"
new_product.product_type = "Much"
new_product.vendor = "Please"
new_product.tags = "Help"
new_product.variants = [
{
"option1" => "This One Works",
"option2" => "Lost Cause",
"option3" => "/wrist",
"postion" => "1",
"price" => "10.00",
"sku" => "12345",
"inventory_management" => "shopify",
} ]
new_product.images = [
{
src: "https://cdn.shopify.com/s/files/1/0750/0067/files/Pro-Tapes.jpg?11603036243532110652"
} ]
new_product.save
creation_time = Time.now - single_product_begin_time
puts '-------------------------------------------------------------------------'
puts "Sorry About the mess babe, atleast it only took #{begin_time - Time.now} minutes."
puts '========================================================================='
我正在开发商店对此进行测试,但我正在尝试重建以前在 magento 上构建的东西,在那里我可以让人们将我的 csv 数据条目转换为 json,然后对数据进行数组/哈希处理。
请不要将我链接到 (shopify)/API 信息。我已经读过了。我不明白它的格式。如果我要到 shopify-cli 控制台,并将 api 示例粘贴到 irb 中,它将无法正确执行。我确信我只是缺乏使用 API 所需的知识,但如果你能稍微帮助我,我将不胜感激。
【问题讨论】:
-
我也在为此苦苦挣扎。你找到解决办法了吗?
-
我找到了答案,你只需要先在产品上设置选项。我在答案中添加了我的代码。