Ruby:从内部类调用父方法

时间:2015-03-03 07:19:22

标签: ruby chef

例如,我有类似的东西(Ruby 1.9.1):

class Chef::Recipe::MyFancyFeature
  def my_action do
    search(:node, 'repice[common]')
  end
end

我认为这种方式没有区别:

class Chef
  class Recipe
    class MyFancyFeature
      def my_action do
        search(:node, 'repice[common]')
      end
    end
  end
end

和我的第二部分问题(最重要的):方法searchChef::Recipe中定义,以及如何从我的MyFancyFeature类中调用它?

1 个答案:

答案 0 :(得分:1)

ad 1)是的,它们是相同的

广告2)如果您想从search致电Chef::Recipe,您必须这样做:

class Chef
  class Recipe
    def search(arg1, arg2)
      # your logic here
      p arg1
      p arg2
    end

    class MyFancyFeature
      def my_action
        Recipe.new.search(:node, 'repice[common]')
      end
    end
  end
end
祝你好运!