第一次在 Rails 中使用 JSON 并试图找出一些看起来应该很基本的东西。我正在使用 Stripe Rails 库并尝试解析并将其中一个 JSON 元素设置为变量。
这是我的实际尝试:
coupon = Stripe::Coupon.retrieve(self.discount_code)
parsed_json = ActiveSupport::JSON.decode(coupon)
discount_amount = parsed_json["percent_off"]
这条线有效:
coupon = Stripe::Coupon.retrieve("save50percent")
在控制台中运行“puts coupon”会显示 JSON 字符串
JSON: {"id":"test50","duration":"once","duration_in_months":null,"livemode":false,"max_redemptions":null,"object":"coupon","percent_off":50 ,"redeem_by":null,"times_redeemed":0}
但试图运行:
parsed_json = ActiveSupport::JSON.decode(coupon)
导致以下错误:
TypeError: can't convert Stripe::Coupon into String
我什至还没有尝试从 JSON 中解析出值——我确信我的方法不正确。
谢谢