我有一个名为“DXFTACCTS”的旧遗留表,我创建了 Rails 模型“Account”。
class Account < ActiveRecord::Base
set_table_name "DXFTACCTS"
end
问题是 DXFTACCTS 有像“XORFNAME”这样的字段,我想在模型中将其设为“first_name”,等等。如何将特定表列“映射”到模型属性?
谢谢!
最佳答案
您可以像这样使用方法 alias_attribute:
class Account < ActiveRecord::Base
set_table_name "DXFTACCTS"
alias_attribute :first_name, :XORFNAME
end
alias_attribute 创建方法 first_name、first_name= 和 first_name?它将映射到您表中的 XORFNAME 列。但是,您将无法在常规列等条件下使用它。例如:
Account.all(:conditions => { :first_name => "Foo" })
那会失败...
关于sql - Rails 3 模型将某些列映射到不同的模型属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5073823/