Railsのattr_accessorのセッターメソッドがあります
# setter method of the shopify_p accessor
def shopify_v=(s)
begin
self.product.shop.connect_to_store
@shopify_v = s if s.save
ensure
ShopifyAPI::Base.site = nil
end
end
保存が成功した場合はtrueを返し、保存アクションが機能しない場合はfalseを返します。
代わりに、常にsオブジェクトを出力します(または@shopify_v、わかりません)。
保存アクションに応じてtrueまたはfalseを返すにはどうすればよいですか?
ありがとう、アウグスト
更新#1
これが同じattr_accessorのgetterメソッドです。基本的に、これまでに行ったことがない場合にのみ、サーバーからオブジェクトをダウンロードします。
# getter method of the shopify_v accessor
def shopify_v
if @shopify_v.nil?
begin
self.product.shop.connect_to_store
@shopify_v = ShopifyAPI::Variant.find(self.shopify_id)
ensure
ShopifyAPI::Base.site = nil
end
puts "remote"
return @shopify_v
else
puts "local"
return @shopify_v
end
end