在ruby里,任何变量都是一个对象,所以可以使用modle名字作为参数
比如 在modle Test里 有这样一个方法
def self.test
puts 'this is test'
end
正常的调用应该是这样 Test.test
如果碰到另外一种情况,多个modle有test方法。可以写一个专门调用这类方法的
modle B
def go_test(obj)
obj.test
end
可以这样调用 B.go_test(Test) :注意 没有引号
Ruby中动态调用Model方法
本文介绍在Ruby中如何通过传递Model名称为参数来动态地调用不同Model中的相同方法,例如test方法。这种方式有助于当多个Model拥有同名方法时进行统一管理。
在ruby里,任何变量都是一个对象,所以可以使用modle名字作为参数
比如 在modle Test里 有这样一个方法
def self.test
puts 'this is test'
end
正常的调用应该是这样 Test.test
如果碰到另外一种情况,多个modle有test方法。可以写一个专门调用这类方法的
modle B
def go_test(obj)
obj.test
end
可以这样调用 B.go_test(Test) :注意 没有引号

被折叠的 条评论
为什么被折叠?