【发布时间】:2015-05-12 23:10:30
【问题描述】:
user.rb 模型内部
before_save :update_stripe
def update_stripe
if customer_id.nil? #line 1
if !stripe_token.present? #line 2
raise "Stripe token not present. Can't create account."
end
customer = Stripe::Customer.create(
:email => email, #line 3
:card => stripe_token, #line 4
)
self.role = "owner" #line 5
end
end
当我执行 'role = "owner"' 时,它不会设置 'role' setter,但执行 'self.role = "owner"' 会在 'line 5' 中设置它,如何? 'customer_id'、'stripe_token'、'email' 和 'stripe_token' getter 也可以在没有 'self' 关键字的情况下在 'line 1'、'line 2'、'line 3' 和 'line 4' 中获取价值。怎么样?
【问题讨论】:
-
除了我链接的问题之外,还有很多其他非常相似的问题
-
感谢 Frederick Cheung
标签: ruby-on-rails-4.1 ruby-2.1