如果我想调用一个类方法(rails中的邮件程序方法),请在变量中提供其名称。我怎样才能做到这一点?对于对象,我们可以使用send
,或者我们可以使用read_attribute
阅读一些值如何调用存储在变量中的类方法
my_object.send("#{self.action_type(self)}")
my_object.read_attribute("#{self.action_type}_email")
但对于类名,没有什么工作为send
被定义为对象类的实例方法。我想是这样的,它不会因为send
工作,不能在类应用:
Notifier.send("#{self.action_type(self)}").deliver
完美.. :)像魅力工作 – 2013-03-05 13:28:41
这不会使这个问题完全没有价值吗?你为什么在你的问题中说发送对班级不起作用? :/ – 2013-03-05 13:46:00
@MikeCampbell你不需要责怪OP的错误。知道类是对象,因此“发送”确实对它们有效,这是一个很好的成就。 – sawa 2013-03-05 14:32:08