class ActiveRecord::Migration::CheckPending

Parent:
Object

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

Public Class Methods

new(app) Show source
# File activerecord/lib/active_record/migration.rb, line 556
def initialize(app)
  @app = app
  @last_check = 0
end

Public Instance Methods

call(env) Show source
# File activerecord/lib/active_record/migration.rb, line 561
def call(env)
  mtime = ActiveRecord::Base.connection.migration_context.last_migration.mtime.to_i
  if @last_check < mtime
    ActiveRecord::Migration.check_pending!(connection)
    @last_check = mtime
  end
  @app.call(env)
end

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