0
我試圖將一個csv文件導入到rails應用程序數據庫中的ruby。當運行bundle exec rake db:import_csv
時,我得到了這個錯誤unknown attribute '2191' for Landslide.
。 2191是csv文件第一行的第一項。Ruby on rails當將csv文件導入數據庫時未知屬性
import_csv.rake
require 'csv'
namespace :db do
task :import_csv => :environment do
CSV.foreach("Sample_landslides.csv", :headers => true) do |row|
Landslide.create!(row.to_hash)
end
end
end
模式
create_table "landslides", force: :cascade do |t|
t.integer "total_id"
t.integer "year_id"
t.date "start_date"
t.date "end_date"
t.integer "day_number"
t.string "continent"
t.string "country"
t.string "location"
t.string "type"
t.integer "admin_level"
t.float "lat"
t.float "lng"
t.boolean "mapped"
t.float "spatial_area"
t.integer "fatalities"
t.integer "injuries"
t.string "notes"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "trigger"
end
請問您可以粘貼您的csv文件的標題。 –
如果你執行'puts row.to_hash',會發生什麼? –
CSV標題:總ID \t Year_ID \t日期\t日期\t天數\t五天數\t年\t洲\t國家\t位置\t類型\t admin_level \t newlat \t NEWLONG \t映射\t空間面積(m^2)\t來源\t死亡人數\t損傷\t觸發器\t備註\t備註\t報告1 \t來源1 \t報告2 \t來源2 \t代表ORT 3 \t來源3 \t報告4 \t源4 –