Rails4では updated_at等がnot nullではなくなったらしい。
Rails4.0に更新した後にdb:migrate:reset
を実行したらschema.rbのupdated_atやcreated_atからnull: false
がなくなった。
調べてみたらこんなコミットがあった。
読むと、テーブルを変更してタイムスタンプのカラムを追加するとNOT NULLのカラムには何らかの値が必要ということでエラーが発生するみたい。
これが解決できないのでRails4.0ではnull: false
がなくなったということだった。
ちなみにnull: false
がデフォルトで付くようになったのはRails3.2からなので、今回の変更でRails3.1以前に戻ったことになる。