11

具体来说...

我不明白在一个的Rails 5.2 应用程序中,如果你进入控制台并检查Rails.application.config.action_controller.default_protect_from_forgery它会返回true

...但是升级的Rails 5.2 应用程序,如果您进入控制台并检查Rails.application.config.action_controller.default_protect_from_forgery它会返回nil(除非您手动设置config/initializers/new_framework_defaults_5_2.rb

这个 GitHub 评论提到了这种行为,但我不明白它是如何工作的,而且我还没有找到任何文档。

WIP 更新: 这个问题似乎是决定不在new_framework_defaults*新生成的应用程序中包含文件的地步。然后这个拉取请求提到new_framework_defaults_*文件仅以滚动方式保存。我仍在研究为什么/如何...

4

2 回答 2

18

要在 Rails 5.2 中加载默认值(即config/initializers/new_framework_defaults_5_2.rb),请在application.rb

config.load_defaults 5.2

然后new_framework_defaults_5_2.rb从初始化程序中删除

于 2018-06-17T03:18:22.327 回答
0
config.load_defaults Rails::VERSION::STRING.to_f

将永远解决问题)

于 2019-12-12T08:15:16.937 回答