RailsによるアジャイルWebアプリケーション開発第8章
この章で結構DBを扱うわけですが、productsテーブルの時はscaffoldでDBも一緒に作ったので、後から作るのは初めて。
手順は、
ruby script/generate migration create_line_items
でmaigrationファイルの雛形を作る。
db/migrate/20081214092439_create_line_items.rb
が作成される(ファイル頭の数字は作成時刻が付く)
この定義ファイルを以下のように編集。
class CreateLineItems < ActiveRecord::Migration def self.up create_table :products,:force => true do |t| t.integer :product_id t.integer :quantity t.decimal :unit_price end end def self.down drop_table :products end end
書き方はこちらを参考。
idのカラムは自動的に付きます。終わったら
rake db:migrate
で更新する。注意するのは、またDBの変更が必要な時はさきほど作ったcreate_line_itemsを編集してrake db:migarateするのではなく、一度 ruby script/generate migration ファイル名 で新しいマイグレーションファイルを作って編集してから、rakeをするということです。
なんだか回りくどい気が...システムを運用していく時に役立つんでしょうかね。