method
assume_migrated_upto_version
Ruby on Rails latest stable (v2.3.4)
-
0 notes -
Class: ActiveRecord::ConnectionAdapters::SchemaStatements
- v1.0.0
- v1.1.0
- v1.1.1
- v1.1.2
- v1.1.3
- v1.1.4
- v1.1.5
- v1.1.6
- v1.2.0
- v1.2.1
- v1.2.2
- v1.2.3
- v1.2.4
- v1.2.5
- v1.2.6
- v2.0.0
- v2.0.1
- v2.0.2
- v2.0.3
- 2.1.0 (0)
- 2.2.1 (0)
- 2.3.2 (0)
- 2.3.4 (0)
- What's this?
assume_migrated_upto_version(version)
public
Hide source
# File activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb, line 339 def assume_migrated_upto_version(version) version = version.to_i sm_table = quote_table_name(ActiveRecord::Migrator.schema_migrations_table_name) migrated = select_values("SELECT version FROM #{sm_table}").map(&:to_i) versions = Dir['db/migrate/[0-9]*_*.rb'].map do |filename| filename.split('/').last.split('_').first.to_i end unless migrated.include?(version) execute "INSERT INTO #{sm_table} (version) VALUES ('#{version}')" end inserted = Set.new (versions - migrated).each do |v| if inserted.include?(v) raise "Duplicate migration #{v}. Please renumber your migrations to resolve the conflict." elsif v < version execute "INSERT INTO #{sm_table} (version) VALUES ('#{v}')" inserted << v end end end

