InstantRailsで始めるrails開発 その5

前回
今回の話は、InstantRailsと関係ない気がするが、エントリの題を考えるのがかったるいので。
Railsアプリを作る時、どのテーブルにも決まり文句的に入れているフィールドがある。

created_at
型はdatetime。レコード作成日時が入る。稼動時にこんなフィールドが要らんアプリでも、デバッグ時に助かることがあるので、毎度、入れている。詳細は、ここで
updated_at
型はdatetime。レコード更新日時が入る。稼動時にこんな(ry。詳細は(ry
lock_version
型はinteger。楽観的ロック用。defaultを設定しておかないとはまる。私は、アプリを作る時、基本は楽観ロックで作り、ロックが不要っぽいことが確認できた後に、このフィールドを消している。詳(ry

というわけで、migrationを書く時、まずは、何も考えないので、以下のように書いている。

    create_table :hoges do |t|
      add_column(t, :updated_at, :datetime)
      add_column(t, :created_at, :datetime)
      add_column(t, :lock_version, :integer, :default=>1)
    end