从嵌套类调用父模块方法

ks_*_*ks_ 15 ruby

我无法弄清楚如何从类中的父模块调用方法.

我想在我的嵌套类中调用父模块的模块函数,但似乎无法找到如何执行此操作的方法.

例:

module Awesome
  class Checker
    def awesome?
      awesome_detection
    end
  end

  module_function
  def awesome_detection
    true
  end

end
Run Code Online (Sandbox Code Playgroud)

如果我打电话Awesome::Checker.new.awesome?,它是不知道的awesome_detection

关于我缺少的任何想法?

Sim*_*tti 24

#!/usr/bin/env ruby -wKU

module Awesome

  class Checker
    def awesome?
      Awesome.awesome_detection
    end
  end

  def self.awesome_detection
    puts "yes"
  end

end

Awesome::Checker.new.awesome?
# => yes
Run Code Online (Sandbox Code Playgroud)

  • 在 `module Awesome` 中调用 `Awesome.awsome...` 似乎是多余的,不是吗? (2认同)