Spec-Zone.ru › Ruby on Rails 5.2

модуль ActiveSupport::Deprecation::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 91
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

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

Настройка методов влияет только на сообщения об устаревании, которые появляются после запуска приложения. Предупреждения об устаревании, выводимые gem'ами, не затрагиваются этой настройкой, потому что они появляются до запуска 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
}

© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

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