未应用 ActiveRecord cache_timestamp_format 配置

ActiveRecord cache_timestamp_format configuration not being applied

我正在尝试通过在 application.rbdevelopment.rb 中设置此配置 config.active_record.cache_timestamp_format = :nsec 来更改迁移版本时间戳格式,就像这里说的 http://guides.rubyonrails.org/configuring.html#configuring-active-record .

问题是这个配置被忽略了,不管我在那里设置的格式如何,当我生成一个新的迁移时,时间戳格式保持不变。

我是不是做错了什么?

因为显然 rails 迁移忽略了它:

https://github.com/rails/rails/blob/master/activerecord/lib/active_record/migration.rb#L909-L915

此外 - 根据文档,:nsec 是 cache_key 中使用的默认值,我在那里没有看到任何与迁移相关的内容。

虽然我想如果您使用 rails 缓存,您会通过更改该选项看到不同的密钥。

(您可以使用 Time::DATE_FORMATS 查看允许的值)

据我所知,允许迁移名称的唯一配置是使用整数与时间戳:config.active_record.timestamped_migrations

如果您不是一个人工作,您也应该保留该选项。