класс ActiveRecord::Migration::CheckPending
Этот класс используется для проверки, что все миграции были выполнены перед загрузкой веб-страницы, если config.active_record.migration_error установлено в :page_load.
Публичные методы класса
# File activerecord/lib/active_record/migration.rb, line 632 def initialize(app, file_watcher: ActiveSupport::FileUpdateChecker) @app = app @needs_check = true @mutex = Mutex.new @file_watcher = file_watcher end
Публичные методы экземпляра
# File activerecord/lib/active_record/migration.rb, line 639
def call(env)
@mutex.synchronize do
@watcher ||= build_watcher do
@needs_check = true
ActiveRecord::Migration.check_pending_migrations
@needs_check = false
end
if @needs_check
@watcher.execute
else
@watcher.execute_if_updated
end
end
@app.call(env)
end
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.