Ruby on rails “怎么做?”;config/initializers/new_framework_defaults_5_2.rb";工作

Ruby on rails “怎么做?”;config/initializers/new_framework_defaults_5_2.rb";工作,ruby-on-rails,ruby-on-rails-5.2,Ruby On Rails,Ruby On Rails 5.2,具体地说 我不明白在一个新的Rails 5.2应用程序中,如果你进入控制台并选中Rails.application.config.action\u controller.default\u protect\u from\u fake它将返回true …但升级后的Rails 5.2应用程序,如果您进入控制台并选中Rails.application.config.action\u controller.default\u protect\u from\u fackery,它将返回nil(除非您手动设

具体地说

我不明白在一个新的Rails 5.2应用程序中,如果你进入控制台并选中
Rails.application.config.action\u controller.default\u protect\u from\u fake
它将返回
true

…但升级后的Rails 5.2应用程序,如果您进入控制台并选中
Rails.application.config.action\u controller.default\u protect\u from\u fackery
,它将返回
nil
(除非您手动设置
config/initializers/new\u framework\u defaults\u 5\u 2.rb

提到了这种行为,但我不明白它是如何工作的&我还没有找到任何文档

WIP更新:似乎决定在新生成的应用程序中不包含
new\u framework\u defaults*
文件。然后提到,
new\u framework\u defaults\u*
文件仅以滚动方式保存。我还在研究为什么/如何…

要在Rails 5.2中加载默认值(即
config/initializers/new\u framework\u defaults\u 5\u 2.rb
),请在
application.rb中进行以下更改

config.load_defaults 5.2
然后从初始化器中删除
new\u framework\u defaults\u 5\u 2.rb

config.load_defaults Rails::VERSION::STRING.to_f

将永远解决问题)

这方面的文档记录仍然非常糟糕。谢谢你的澄清!