модуль ActiveSupport::Deprecation::Behavior
Behavior модуль позволяет определить, как отображать сообщения о устаревании. Вы можете создать пользовательское поведение или установить любое из DEFAULT_BEHAVIORS константы. Доступные типы поведения:
-
raise -
Вызвать
ActiveSupport::DeprecationException. -
stderr -
Записать все предупреждения об устаревании в
$stderr. -
log -
Записать все предупреждения об устаревании в
Rails.logger. -
notify -
Использовать
ActiveSupport::Notificationsдля уведомленияdeprecation.rails. -
silence -
Ничего не делать.
Настройка поведения влияет только на сообщения об устаревании, которые происходят после загрузки. Для получения дополнительной информации вы можете прочитать документацию по behavior= методу.
Атрибуты
Определяет, нужно ли выводить трассировку стека вместе с предупреждением.
Открытые методы экземпляров
# File activesupport/lib/active_support/deprecation/behaviors.rb, line 66 def behavior @behavior ||= [DEFAULT_BEHAVIORS[:stderr]] end
Возвращает текущее поведение или, если оно не задано, по умолчанию :stderr.
# File activesupport/lib/active_support/deprecation/behaviors.rb, line 96
def behavior=(behavior)
@behavior = Array(behavior).map { |b| DEFAULT_BEHAVIORS[b] || arity_coerce(b) }
end Устанавливает поведение на указанное значение. Может быть одиночным значением, массивом или объектом, который отвечает на call.
Доступные типы поведения:
-
raise -
Вызвать
ActiveSupport::DeprecationException. -
stderr -
Записать все предупреждения об устаревании в
$stderr. -
log -
Записать все предупреждения об устаревании в
Rails.logger. -
notify -
Использовать
ActiveSupport::Notificationsдля уведомленияdeprecation.rails. -
silence -
Ничего не делать.
Настройка поведения влияет только на сообщения об устаревании, которые происходят после загрузки. Deprecation предупреждения, вызываемые драгоценностями, не затрагиваются этим параметром, потому что они возникают до запуска Rails.
ActiveSupport::Deprecation.behavior = :stderr
ActiveSupport::Deprecation.behavior = [:stderr, :log]
ActiveSupport::Deprecation.behavior = MyCustomHandler
ActiveSupport::Deprecation.behavior = ->(message, callstack, deprecation_horizon, gem_name) {
# custom stuff
}
# File activesupport/lib/active_support/deprecation/behaviors.rb, line 71 def disallowed_behavior @disallowed_behavior ||= [DEFAULT_BEHAVIORS[:raise]] end
Возвращает текущее поведение для запрещенных сообщений об устаревании или, если оно не задано, по умолчанию :raise.
# File activesupport/lib/active_support/deprecation/behaviors.rb, line 104
def disallowed_behavior=(behavior)
@disallowed_behavior = Array(behavior).map { |b| DEFAULT_BEHAVIORS[b] || arity_coerce(b) }
end Устанавливает поведение для запрещенных сообщений об устаревании (те, которые настроены с помощью ActiveSupport::Deprecation.disallowed_warnings=) на указанное значение. Как и в случае с behavior=, это может быть одиночное значение, массив или объект, который отвечает на call.
© 2004–2020 David Heinemeier Hansson
Licensed under the MIT License.