私はRuby on Railsを初めて使用します。seed.rb
ファイルの機能、このファイルを使用する理由、およびrake db:seed
コマンドを実行する必要がある理由がわかりません。誰でも例を挙げて説明できますか?
質問する
15145 次
2 に答える
25
データのブートストラップ
シード データの目的は、データベースをブートストラップすることです。たとえば、ユーザーの都市と州を追跡するユーザー テーブルがある場合、最初のユーザーを作成する前に、米国の州名と略語を含む関連テーブルをシードすることができます。
同様に、管理者アカウントなど、アプリケーションを初めて実行するために必要なデータをシードすることもできます。原則として、データベースまたはその関係をブートストラップするために必要でないものは、seeds.rb ファイルに追加しないでください。
関連するレーキ タスク
seed.rb ファイルはシード データが保存される場所ですが、シード データを実際に使用するには、適切な rake タスクを実行する必要があります。プロジェクト ディレクトリでを使用rake -T
すると、次のタスクに関する情報が表示されます。
- rake db:seed
db/seeds.rb からシード データを読み込みます - rake db:setup
データベースを作成し、スキーマをロードし、シード データで初期化します - rake db:reset
と同じrake db:setup
ですが、最初にデータベースを削除します
したがって、rake db:seed
seeds.rb ファイルをいつでも手動で実行できます。ただし、ほとんどの場合、アプリケーションをブートストラップするたびにrake db:setup
orを実行する必要があります。rake db:reset
于 2012-12-09T16:17:20.600 に答える