Spec-Zone.ru › Ruby on Rails 6.1

модуль ActiveSupport::Deprecation::Behavior

Behavior модуль позволяет определить, как отображать сообщения о устаревании. Вы можете создать пользовательское поведение или установить любое из DEFAULT_BEHAVIORS константы. Доступные типы поведения:

raise

Вызвать ActiveSupport::DeprecationException.

stderr

Записать все предупреждения об устаревании в $stderr.

log

Записать все предупреждения об устаревании в Rails.logger.

notify

Использовать ActiveSupport::Notifications для уведомления deprecation.rails.

silence

Ничего не делать.

Настройка поведения влияет только на сообщения об устаревании, которые происходят после загрузки. Для получения дополнительной информации вы можете прочитать документацию по behavior= методу.

Атрибуты

debug[RW]

Определяет, нужно ли выводить трассировку стека вместе с предупреждением.

Открытые методы экземпляров

behavior() Показать исходный код
# File activesupport/lib/active_support/deprecation/behaviors.rb, line 66
def behavior
  @behavior ||= [DEFAULT_BEHAVIORS[:stderr]]
end

Возвращает текущее поведение или, если оно не задано, по умолчанию :stderr.

behavior=(behavior) Показать исходный код
# 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
}
disallowed_behavior() Показать исходный код
# File activesupport/lib/active_support/deprecation/behaviors.rb, line 71
def disallowed_behavior
  @disallowed_behavior ||= [DEFAULT_BEHAVIORS[:raise]]
end

Возвращает текущее поведение для запрещенных сообщений об устаревании или, если оно не задано, по умолчанию :raise.

disallowed_behavior=(behavior) Показать исходный код
# 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API