LoginSignup
5
5

More than 3 years have passed since last update.

CSVファイルを作成してrails db:seedで大量のデータを投入する

Posted at

栄養価を意識したレシピ投稿サイトを作っています
大量の食材を一つ一つデータに投入するのは面倒です
そこで食品成分表2015のデータを使って(そこらへんにあります)、
自分の使いたいデータを抽出してcsvファイルにまとめてrails db:seed で一気にデータを入れます

僕のPCはMacbookなのでGoogleスプレッドシートを使います

手順

  1. 使いたいデータをgoogleスプレッドシートに入れます486742c34028055b0dc040753a47b657.png

2.左上の「ファイル」→「ダウンロード」→「カンマ区切りの値(.csv、現在のシート)」でcsvファイルを保存

3.保存したファイルをrailsのdb/csvのなかに保存

4.db/seedsrbに書き込み

db/seeds.rb

require "csv"

CSV.foreach('CSVファイルのパス',headers: true) do |row|
  モデル名.create(
    カラム名:     row['csvファイルの列'],
    〜
    〜
  )
end

5.rails db:migrate → rails db:seedでデータ呼び込み

以上
初めてcsvファイルを触りましたが思ってたよりカンタンに導入できました

いつものことですが、もし間違ってたらご指摘いただけると助かります

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5