有人可以帮我在我的实例中插入一个总值相同的属性吗?
实际
#<Test surname: "example", givename: "test">
:定位:
#<Test surname: "example", givename: "test", newvalue: "text">
如何更改此代码?
@users.each do |user|
user
end
或者我可以使用:attr_accessor
答案 0 :(得分:1)
如果你真的需要为你班级的所有实例提供相同的价值,你可以这样做:
class Some
def initialize
@value = "Some value"
end
def newvalue
@value
end
end
这将为newvalue
提供所有类的实例或某些你称之为“Some value”的文本。希望它会有所帮助。
答案 1 :(得分:0)
您需要在模型中添加新列。为此,您可以使用迁移。首先创建一个这样的迁移:
rails g migration addNewValueToTests
然后,您会在db/migrations/
中找到迁移文件,并在add_column
方法中添加self.up
,如下所示:
def self.up
add_column :table_name, :column_name, :datatype #datatype like integer, sting, text,....
end
然后使用rake db:migrate
命令迁移数据库,并将列+ setter / getter方法添加到模型中!
//如果您只想要一个别名,可以在模型中使用alias_attribute
,如下所示:
alias_attribute :new_name, :current_name