1

国と地域の大きな csv ファイル (スプレッドシートで編集できる必要があります) があります。国には have_many の地域があります。

このファイルには、同じ国に対して複数の行があります。つまり、次のようになります。

USA, New York
USA, Pennsylvania

この情報をデータベースにシードするために、seed-fu を使用したいと思います。Writer を使用して CSV ファイルを取得し、シード ファイルを生成する必要があると思いますが、関連付けを保持しながらこれを行う方法がわかりません。これには標準的な方法がありますか?

4

1 に答える 1

1

私はWriterなしでこれをやってしまいました。私の答えは次のとおりです。

  • ファイルを 1 行ずつ処理し、国と地域を作成します。
  • 行ごとに、まず国を作成してみてください。次に、region_name と country_id を使用して、seed_fu のシード メソッドに対する制約としてリージョンを作成します。
  • シードのラッパーを作成し、メモ化を使用することで、各国でシードを複数回呼び出す非効率性 (問題はありませんが遅い) を回避しています。
于 2011-09-05T21:33:07.910 に答える