-1

(ここにruby noob..私が正しく質問していない場合はお詫びします)

したがって、2つのファイルがあります。1つにはクラスを保持するモジュールが含まれています。

file_alpha.rb:

class alpha
  def a_name
     do stuff
  end
end

file_beta.rb:

module STUFF_IN_BETA
  class beta
    def b_name
      do more stuff
    end
  end
end

だから私はfile_alpha内の'defb_name'にアクセスしたいのですが、どうすればいいのかわかりません...

class alpha
  def a_name
     do stuff
     b_name()  <----HOW TO DO this?
  end
end

メソッド'b_name'をクラスalphaで使用できるようにするにはどうすればよいですか?

4

3 に答える 3

1

bをaにメソッドを追加するモジュールにしたい場合は、そのclass内部を捨てて、次のようにします。

class a
  include STUFF_IN_BETA
  def a
    do stuff
    b # this will call method b
  end
end

module STUFF_IN_BETA
  def b
    do more stuff
  end
end
于 2012-12-04T01:56:31.757 に答える
0

クラスrequire'b.rb'を含める必要があります

次に、メソッドbb()を呼び出します。

于 2012-12-04T01:56:15.080 に答える
0

何かのようなもの:

file_beta.rb

module StuffInBeta
  def b
    do more stuff
  end
end

file_alpha.rb

require 'file_beta' 
class A
  def a
    do stuff
    b          # from the module 
  end
end
于 2012-12-04T02:08:18.010 に答える