rails_adminで警告が出て五月蝿かったので、
把握しているものは表示しないようにしてみました.
initializers
に配置
payload[:message]
に非推奨のメッセージが入っているので、
適当に判定してnext
でブロックから抜けるようにしています.
config/initializers/notifications.rb
ActiveSupport::Notifications.subscribe 'deprecation.rails' do |name, start, finish, id, payload|
# OPTIMIZE あえて非推奨の警告を無視
next if payload[:message].include? 'config/initializers/rails_admin.rb'
if Rails.env.test?
$stderr.puts(payload[:message])
else
logger = Rails.logger
logger.warn payload[:message]
logger.debug payload[:callstack].join("\n ") if logger.debug?
end
end
:notify
するように設定
コンフィグで以下のように:notify
を指定するだけです.
config/environments/development.rb
config/environments/test.rb
config.active_support.deprecation = :notify
プロダクションには何度も非推奨の警告を表示しても仕方ないので:silence
を指定しておけばいいと思います.
config/environments/production.rb
config.active_support.deprecation = :silence