Ich versuche, eine Rails-Datenbank mit dem Inhalt einer CSV-Datei zu erstellen. Ich bin neu in RoR, also kann ich meinen Fehler nicht finden. Das Skript funktioniert gut, aber es nimmt nicht den Inhalt meiner CSV-Datei (alles ist mit Null gefüllt).CSV Seed funktioniert nicht für Rails-Datenbank
Die Migration:
#db/migrate/x_create_transactions.rb
class CreateTransactions < ActiveRecord::Migration[5.0]
def change
create_table :transactions
add_column :transactions, :siren, :integer
add_column :transactions, :nom_ent, :string
add_column :transactions, :adresse, :string
add_column :transactions, :complement_adresse, :string
add_column :transactions, :cp_ville, :string
add_column :transactions, :pays, :string
add_column :transactions, :region, :string
add_column :transactions, :departement, :integer
add_column :transactions, :activite, :string
add_column :transactions, :date, :integer
add_column :transactions, :nb_salaries, :string
add_column :transactions, :nom, :string
add_column :transactions, :prenom, :string
add_column :transactions, :civilite, :string
add_column :transactions, :adr_mail, :string
add_column :transactions, :libele_acti, :string
add_column :transactions, :categorie, :string
add_column :transactions, :tel, :integer
end
end
Mein Rechen:
#db/migrate/seeds.rb
require 'smarter_csv'
options = {}
SmarterCSV.process('lib/seeds/siren_db.csv', options) do |chunk|
chunk.each do |row|
Transaction.create!({
:siren => row[0],
:nom_ent => row[1],
:adresse => row[2],
:complement_adresse => row[3],
:cp_ville => row[4],
:pays => row[5],
:region => row[6],
:departement => row[7],
:activite => row[8],
:date => row[9],
:nb_salaries => row[10],
:nom => row[11],
:prenom => row[12],
:civilite => row[13],
:adr_mail => row[14],
:libele_acti => row[15],
:categorie => row[16],
:tel => row[17]
})
end
end
Mein Modell:
#models/transcations.rb
class Transaction < ApplicationRecord
end
Der Anfang der CSV-Datei:
siren;nom_ent;adresse;complement_adresse;cp_ville;pays;region;departement;activite;date;nb_salaries;nom;prenom;civilite;adr_mail;libele_acti;categorie;tel
38713707;SYND COPR DU 6 AU 8 RUE DE CHARONNE 75;6 RUE DE CHARONNE;;75011 PARIS;FRANCE;Île-de-France;75;Activités combinées de soutien lié aux bâtiments;2008;1 ou 2 salariés;;;;;Syndicat de copropriété ;PME;
38713707;SYND COPR DU 6 AU 8 RUE DE CHARONNE 75;6 RUE DE CHARONNE;;75011 PARIS;FRANCE;Île-de-France;75;Activités combinées de soutien lié aux bâtiments;2008;1 ou 2 salariés;;;;;Syndicat de copropriété ;PME;
38724340;SYND COPR DU 18 BD ARAGO 75013 PARIS;18 BOULEVARD ARAGO;;75013 PARIS;FRANCE;Île-de-France;75;Activités combinées de soutien lié aux bâtiments;2008;1 ou 2 salariés;;;;;Syndicat de copropriété ;PME;
Vielen Dank für Ihre Hilfe.
Können Sie angeben, was Sie ausgeführt haben und was die Fehlermeldung ist? – leifg
Rake db: migrieren (um die db zu erstellen), rake db: seed (die die db mit dem csv füllen, aber stattdessen einfach für jede Zeile mit nill füllen). Ich bekomme keine Fehlermeldung nach dem Rake db: Seed – AlphaNico