This class is used to verify that all migrations have been run before loading a web page if config.active_record.migration_error
is set to :page_load
.
Methods
Class Public methods
new(app, file_watcher: ActiveSupport::FileUpdateChecker)
📝 Source code
# File activerecord/lib/active_record/migration.rb, line 633
def initialize(app, file_watcher: ActiveSupport::FileUpdateChecker)
@app = app
@needs_check = true
@mutex = Mutex.new
@file_watcher = file_watcher
end
🔎 See on GitHub
Instance Public methods
call(env)
📝 Source code
# File activerecord/lib/active_record/migration.rb, line 640
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
🔎 See on GitHub