shopify_api宝石を使用しています。
API docShopifyAPI::Orderは、どのフィールドを返すかを伝えることで、レスポンスを簡略化できることを示しています。たとえば、次はid属性のみを返しshipping_addressます。
ShopifyAPI::Order.find(:all, params: {fields: "id,shipping_address"})
shipping_addressたまたま内部に複数のフィールドを持つハッシュです。ネストされたフィールドを指定しshipping_addressて返すことはできますか? 例えば
ShopifyAPI::Order.find(:all, params: {fields: "id,shipping_address['country_code']"})
これは次のようなものを返すかもしれません
#<ShopifyAPI::Order:0x0000010558b348
@attributes={
"id"=>12345678,
"shipping_address"=>#<ShopifyAPI::ShippingAddress:0x0000010558aa88
@attributes={"country_code"=>"US"},
@prefix_options={},
@persisted=false>
},
@prefix_options={},
@persisted=true>
その属性を自分で選択できることはわかっていますが ( order.shipping_address.country_code)、これは応答を「スキニー ダウン」するためのものです。
ボーナス質問 1:fieldsパラメータを使用することで得られるメリットは何ですか?
おまけの質問 2: Shopify が配送先住所なしを返す可能性があるのはいつですか?