0

フォルダー内にクラスTestがありlib、このクラスのオブジェクトをコントローラークラス名のメソッド内で動的に作成したいと考えていますclass UsersController < ApplicationController。これどうやってするの?

何かのようなもの

class UsersController < ApplicationController  
  def address
    {"here I want to create the object of Test class"}
  end
end
4

3 に答える 3

1

Ruby では C++ のようにオブジェクトを作成することはできず、Object::newメソッドを使用して動的オブジェクトのみを作成できます。Testしたがって、単純に書いたクラスのインスタンスを作成するには:

test = Test.new
于 2012-07-03T11:27:01.737 に答える
0

ruby でのコンパイルはありません。また、Test は、メイン スコープ ofc で定義されていれば、どこでも使用できる単なる定数です。

于 2012-07-03T12:09:14.303 に答える
0

Ruby はインタープリター言語であるため、コンパイル フェーズはありません。config/application.rb で lib フォルダーまたはファイルをロードするため、起動時にこれらのファイルが自動的にロードされます。すべてのメソッドのテストクラスのインスタンスが必要な場合は、メソッドを使用してインスタンスを作成し、メソッドの前にロードするメソッドを作成するだけですbefore_filter

于 2012-07-03T12:26:01.587 に答える