首先,我有两种方法和基本相同的变量。我该如何缩短这个:
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)
答案 0 :(得分: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"