Ruby on Rails的 - 呼叫从
我使用Ruby on Rails的下面的类结构中的父类每个子类的方法:Ruby on Rails的 - 呼叫从
class Parent def self.parse
self.subclasses.each(&:parse) # how to fix this?
end
end
class Child1 < Parent
def self.parse
# ...
end
end
class Child2 < Parent
def self.parse
# ...
end
end
我想这样做:
Parent.parse => Child1.parse and Child2.parse
但实际上子类没有加载,所以subclasses
方法给出空数组。
有没有简单的方法来做这个非常普通的任务?
回答:
发生这种情况是因为rails自动载入类:Parent
在使用某处或需要之前不知道其子类。
刚从Parent
类手动要求他们都:
# parent.rb require 'child1'
require 'child2'
class Parent
def self.parse
self.subclasses.each(&:parse) # how to fix this?
end
end
以上是 Ruby on Rails的 - 呼叫从 的全部内容, 来源链接: utcz.com/qa/262350.html