J'essaie d'importer un fichier csv dans une base de données d'applications ruby on rails. J'ai eu cette erreur unknown attribute '2191' for Landslide.
lors de l'exécution bundle exec rake db:import_csv
. 2191 est le premier élément de la première ligne du fichier csv.Ruby on rails Attribut inconnu lors de l'importation de fichier csv dans la base de données
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
schéma
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
pouvez-vous s'il vous plaît coller les en-têtes de votre fichier csv. –
Que se passe-t-il si vous faites 'row.to_hash'? –
tête csv: ID total \t Year_ID \t Date de \t Date de \t Numéro jour \t numéro cinq jours \t années \t Continent \t Pays \t Localisation \t Type de \t admin_level \t newlat \t NEWLONG \t cartographiés zone spatiale \t (m^2) \t Source \t accidents mortels \t blessures \t Trigger \t Remarques \t Remarques Rapport Source 1 \t rapport 2 \t Source 2 \t Rep ort 3 \t Source 3 \t Rapport 4 \t Source 4 –