Pet*_*dis 6 postgresql ruby-on-rails
我正在开发一个新的 Rails 应用程序,当我运行迁移时 schema.rb 正在更改,新的参数精度会添加到我的时间戳中。
这个精度新参数从哪里来?
t.datetime "created_at", precision: 6, null: false
Run Code Online (Sandbox Code Playgroud)
jib*_*iel 13
precision是通过ActiveRecord::ConnectionAdapters::SchemaStatements#add_timestamps方法添加的。
它不是任意的,但非常适合时间戳属性(微秒精度与秒精度),如果 RDBMS 支持的话。
\n这些默认设置已经存在至少 3 年了(从 Rails 6.0 开始)。
\n自2021 年夏天 以来#add_column,#column方法也定义了它们。因此,如果您升级到Rails 7.0.2 \xe2\x80\x94precision: 6将被删除,schema.rb因为它现在是一个内部逻辑。
您可以在 Active Record变更日志中找到一些相关的迁移指南。
\n| 归档时间: |
|
| 查看次数: |
3696 次 |
| 最近记录: |