migrationでCURRENT_TIMESTAMPを使用する方法

Railsのマイグレーションやridgepoleの t.timestamps でタイムスタンプが自動生成されますが、デフォルト値にDBMSの時刻取得機能を使用したい場合、以下のように指定すると反映されます。

t.timestamps null: false, default: ->{ "CURRENT_TIMESTAMP" }

defaultオプションをLambda式で指定しないと無視されます。なお、原則としてRailsがタイムスタンプを投げているため、通常の処理ではDBMS側のCURRENT_TIMESTAMP処理は使用されないと考えられます。

⁋ 2019/08/08↻ 2024/11/07
中馬崇尋
Chuma Takahiro