我正在尝试将 CSV 行添加到表中的记录中,除了实际上没有显示任何内容之外,一切似乎都运行良好。
这是我的耙子任务:
namespace :csv do
  desc "Import CSV Data"
  task :c_up => :environment do
    require 'csv'
    csv_file_path = 'db/main.csv'
    CSV.foreach(csv_file_path, :headers => true) do |row|
      row = Entry.create!({
        :one => row[0],
        :two => row[1],
        :three => row[2],
        :four => row[3],
        :five =>row[4],
        :six => row[5],
        :seven => row[6],
        :eight => row[7],
        :nine => row[8],
        :ten => row[9]
      })
      row.save
      puts "Entry added!"
    end
  end
end
我的 CSV 中的标题被命名为与属性匹配。
当我运行任务时,我没有收到任何错误,并且所有“已添加条目!” 出现在控制台中。我在没有 and 的情况下尝试过row =,row.save因为我已经看到很多没有这些的例子,但它没有帮助。
耙子完成后,根本没有任何记录。有什么明显的我做错了吗?似乎这是在遵循我见过的大多数示例。
编辑 感谢您的所有回答和评论!显然,这一直到语法都有缺陷,我将尝试您的建议,然后我会更新它。再次感谢!
编辑2 原来是你们都指出的语法问题,所以+1感谢大家!我评论它仍然不起作用的原因是一个不相关的问题,如果没有@jvnill 的评论,我不会想出来。