datetimeカラムのデフォルト値について
datetimeカラムのデフォルトを現在時間にしたい
この前提のもと、migrationに
t.datetime :created_at, default: DateTime.now
と安直に書いてmigrationすると、migrationされた日がデフォルト値になってしまう。
datetimeみたいに動的な値は、migrationされた時にしか計算されないためだ、と。
Railsガイド>Active Record マイグレーション>3.5 カラム修飾子
設定方法
t.datetime :created_at, default: -> { 'NOW()' }
これでdatetimeのデフォルト値を設定できました!
参考
他の記述方法もありました!参考にさせていただきました。
Ruby on Railsのmigrationでdatetimeのデフォルト値をCURRENT_TIMESTAMPにする
Author And Source
この問題について(datetimeカラムのデフォルト値について), 我々は、より多くの情報をここで見つけました https://qiita.com/Dyoko_/items/67236592b58ae43ad027著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .