0

id、task、description、created_at、updated_atの列を持つcsvを生成しました

 create_table "tasks", :force => true do |t|
t.string   "task"
t.string   "description"
t.datetime "created_at",   :null => false
t.datetime "updated_at",   :null => false

sqliteKonsoleを開きました

   rails db
   .separator ','
   .C:/User/jkl/Desktop/tasks.csv

エラーデータ型の不一致が発生します。私はcreated_atとupdated_atを入力しませんが、これはrailsからnull=>falseまでです。

どのようにインポートしますか?

4

1 に答える 1

3

私は通常、ルビースクリプトを介してそれを行います:

require 'csv'

def import
  CSV.foreach('path/to/file.csv', :col_sep => ';', :headers => true) do |row|
    Task.create!(row.to_hash)
  end
end

これは、CSVヘッダーが列名と一致していると仮定して機能します。

task;description
"Task 1";"Paint the fence"

お役に立てば幸いです。

于 2013-02-22T17:16:59.107 に答える