0

まず、2 つのメソッドと基本的に同じ変数があります。これを短縮するにはどうすればよいですか:

def one
  humba = "was"
  que = "como"
  ruz = 12
  ....
end

def two
  humba = "was"
  que = "como"
  ....
end

モデルでメソッドを呼び出す方法も知りたいですか? たとえば、モデルに次のメソッドがあります。

def model_def
end

そして、私のコントローラでは、次のようなものを書きたいです:

tmp = params[:setting][:file].tempfile
doc = DBF::Table.new(tmp)
model_def(doc)
4

1 に答える 1

1

あなたが何を求めているのか少し不明です。ただし、一般的には、共有変数をクラス内のインスタンス変数に格納します。

class Book
  attr_accessor :title, :author

  def description
    "#{@title} was written by #{@author}."
  end
end

「自分のモデルを指す定義を作成するにはどうすればよいですか」という質問に答えるには、「自分のモデルでメソッドを呼び出すにはどうすればよいですか。オブジェクトのインスタンスを作成します。Rails では、次のようになります。これ:

@book = Book.find(params[:id])
@book.author = "A New Author" # to make an assignment

属性を読み取るには、次のようにします。

@book = Book.find(params[:id])
@book.author => "Ernest Hemingway"

あなたの場合:

class Foo
  attr_accessor :humba, :que, :ruz
end

これにより、次のようなことができます。

@foo = Foo.new
@foo.humba = "que"
@foo.humba => "que"
于 2013-09-19T15:12:57.503 に答える