我可以使用单个模型中的属性导入CSV文件并创建一个新对象(在本例中列出)。
我把它放在了清单模型中
accepts_nested_attributes_for :address
其中address是关联模型(地址有很多列表,列表属于地址)。
我认为在导入CSV文件时我也可以从地址模型中批量分配属性,但是我收到错误:
Can't mass-assign protected attributes: unit_number
其中unit_number在地址模型中的一个属性中(它在attr中可访问)。
答案 0 :(得分:4)
更改导入方法:
def self.import(file)
CSV.foreach(file.path, headers: true) do |row|
Listing.create!( :price => row[0], :status => row[1],
:beds => row[2], :baths => row[3],
:address_attributes => {:unit_number => row[4]} )
end
end