【发布时间】:2021-12-04 13:47:50
【问题描述】:
生成迁移后,我总是更改默认 t.timestamps ,因为 Postgres 数据库的其他应用程序在此默认时间戳所具有的大精度方面存在问题。我也喜欢数据库设置时间戳(而不是 Rails 为我这样做),因此 'CURRENT_TIMESTAMP'
class CreateUsers < ActiveRecord::Migration[6.1]
def change
create_table :users do |t|
t.string :name
t.timestamps limit: 3, default: -> { "timezone('utc', now())" }, null: false
end
end
end
我最近升级到 Rails 6.1.4.1(来自 Rails 5.2)
limit: 3 设置似乎不再起作用。它没有给出任何警告,但在查看 Postgres 数据库时,数据类型是 timestamp 而不是运行此类迁移后通常的 `timestamp(3)。
【问题讨论】:
标签: postgresql ruby-on-rails-6