Spec-Zone.ru › Ruby on Rails 6.1

класс ActiveRecord::Migration::CheckPending

Родитель:
Object

Этот класс используется для проверки, что все миграции были выполнены перед загрузкой веб-страницы, если config.active_record.migration_error установлено в :page_load

Публичные Классовые Методы

new(app, file_watcher: ActiveSupport::FileUpdateChecker) Показать исходный код
# File activerecord/lib/active_record/migration.rb, line 579
def initialize(app, file_watcher: ActiveSupport::FileUpdateChecker)
  @app = app
  @needs_check = true
  @mutex = Mutex.new
  @file_watcher = file_watcher
end

Публичные Методы Экземпляров

call(env) Показать исходный код
# File activerecord/lib/active_record/migration.rb, line 586
def call(env)
  @mutex.synchronize do
    @watcher ||= build_watcher do
      @needs_check = true
      ActiveRecord::Migration.check_pending!(connection)
      @needs_check = false
    end

    if @needs_check
      @watcher.execute
    else
      @watcher.execute_if_updated
    end
  end

  @app.call(env)
end

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

Spec-Zone.ru

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