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をするということです。

なんだか回りくどい気が...システムを運用していく時に役立つんでしょうかね。

DBの見方はRails2.0からsqliteがデフォルトになったのはいいが、どうやって中身みるんだ?を参考。