我正在尝试理解弃用警告:
DEPRECATION WARNING: Initialization autoloaded the constants
ActionText::ContentHelper and ActionText::TagHelper.
Being able to do this is deprecated. Autoloading during initialization is
going
to be an error condition in future versions of Rails.
Reloading does not reboot the application, and therefore code executed during
initialization does not run again. So, if you reload
ActionText::ContentHelper, for example,
the expected changes won't be reflected in that stale Module object.
These autoloaded constants have been unloaded.
In order to autoload safely at boot time, please wrap your code in a reloader
callback this way:
Rails.application.reloader.to_prepare do
# Autoload classes and modules needed at boot time here.
end
That block runs when the application boots, and every time there is a reload.
For historical reasons, it may run twice, so it has to be idempotent.
Check the "Autoloading and Reloading Constants" guide to learn more about how
Rails autoloads and reloads.
(called from <top (required)> at
/home/keith/development/pciapp/config/environment.rb:5)此弃用警告是什么意思?我如何解决它?
发布于 2021-04-24 02:37:26
一些调查发现,我的Rails 6.1应用程序中有两个不推荐使用该警告的来源。
我在几个初始化器中引用了
指南(https://guides.rubyonrails.org/action_mailer_basics.html#action-mailer-configuration)中的建议,我决定将所有这些引用都转移到Rails
发布于 2021-04-13 02:36:45
这是rails 6.0.0中的一个问题,https://github.com/rails/rails/issues/36546更新到rails 6.0.1应该会解决这个问题
https://stackoverflow.com/questions/67063314
复制相似问题