【发布时间】:2015-10-20 13:38:15
【问题描述】:
我研究了 Ruby 类、实例方法之间的主要区别,我发现的主要区别是我们不需要创建该类的实例,我们可以直接在类名上直接调用该方法。
class Notifier
def reminder_to_unconfirmed_user(user)
headers['X-SMTPAPI'] = '{"category": "confirmation_reminder"}'
@user = user
mail(:to => @user["email"], :subject => "confirmation instructions reminder")
end
end
因此,我在 Notifier 类中定义了实例方法 reminder_to_unconfirmed_user 以向未经确认的用户发送电子邮件,当我运行 Notifier.reminder_to_unconfirmed_user(User.last) 时,它会被调用,前提是它是实例方法而不是类方法。
【问题讨论】:
-
问题是什么?
-
他的问题是为什么可以在类上调用实例方法,就好像它是类方法一样。在下面发布了答案。
标签: ruby-on-rails ruby