【发布时间】:2015-09-15 21:08:46
【问题描述】:
我定义了以下模块,以及一个模块方法和一个嵌套在模块方法中的方法:
module RansackHelpers
def self.split(attribute, model_class)
def run(memo, model_class, attribute)
# Code
end
run([], model_class, attribute)
end
end
如何在self.split 中调用run?显然,它没有找到嵌套方法。
【问题讨论】:
-
def self.run(memo, model_class, attribute)怎么样? -
确实如此。但是既然
run嵌套在self.split上,那我为什么还要加上self呢? -
这种“嵌套”
run方法的目的是什么? -
这是一个在
self.split内部触发的递归方法。我有它主要是因为我不想用固定属性调用self.split,例如[]。
标签: ruby