ruby-on-rails - 将 .csv 文件保存到无法识别 to_hash 方法的数据库

标签 ruby-on-rails ruby csv ruby-on-rails-2

根据这个example , 以下方法:

require "csv"

def import_vault_data(filename)    
    fn = "#{RAILS_ROOT}/public/data/#{filename}"
    CSV.foreach(fn, :headers => true) do |row|
        House.create!(row.to_hash)    
    end
end

产生此错误:

undefined method `to_hash' for #<Array:0x104cc07b8>

有什么遗漏的线索吗?

我正在使用 rails 2.3.9

最佳答案

答案可能有点晚,但您需要:

CSV.foreach(file.path, headers: true) do |row|

因为你不能调用 to_hash 除非你在散列中有标题

关于ruby-on-rails - 将 .csv 文件保存到无法识别 to_hash 方法的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12756670/

相关文章:

ruby-on-rails - 如何在 Rails Assets 中要求 Yarn 包?

ruby-on-rails - 使用docker-compose对Rails应用程序进行Docker化

Jquery token 输入自动完成不适用于带有 Rails 3 的 Facebook 好友数组

ruby-on-rails - Ruby:创建日期范围

ruby-on-rails - ActiveRecord 存在吗?与协会

python - 用字符串周围的引号编写 csv (Python)

ruby-on-rails - 为 Rails 项目创建一个 gem

ruby-on-rails - 将 HashMap 作为对象的属性进行访问

python - 使用 python 将 xml 数据转储到 csv 文件中的单元格中

java - 移动文件后找不到 FlatFileItemReader 的资源