在液体模板中,这是这样实现的:
{{ product.metafields.book.author }}
它为它的关键 'book' 返回 'author' 的值
我正在使用 Shopify API 和 Ruby on Rails,并且已成功遍历给定产品的每个元字段:
在 Controller 中:
@products = ShopifyAPI::Product.find(:all, :params => {:limit => 10})
在 View 中:
<% @products.metafields.each do |metafield| %>
<%= metafield.key %> : <%= metafield.value %>
<% end %>
正如预期的那样,这将返回产品的所有元字段。如何仅返回与特定键匹配的元字段,即上面示例中的“书”?
最佳答案
# add metafield
product = ShopifyAPI::Product.find(product_id)
product.add_metafield(ShopifyAPI::Metafield.new({
:description => 'Author of book',
:namespace => 'book',
:key => 'author',
:value => 'Kurt Vonnegut',
:value_type => 'string'
}))
# retrieve metafield
author = ShopifyAPI::Metafield.find(:first,:params=>{:resource => "products", :resource_id => product.id, :namespace => "book", :key => "author"}).value
更多信息:http://www.shopify.com/technology/3032322-new-feature-metafields
关于ruby-on-rails-3.1 - 使用 Shopify API、Ruby on Rails 为产品选择特定的元字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11537968/