Class: ActiveRecord::SchemaDumper

Inherits:
Object
  • Object
show all
Defined in:
lib/active_record/schema_dumper.rb

Overview

Active Record Schema Dumper

This class is used to dump the database schema for some connection to some output format (i.e., ActiveRecord::Schema).

Direct Known Subclasses

ConnectionAdapters::SchemaDumper

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.dump(connection = ActiveRecord::Base.connection, stream = STDOUT, config = ActiveRecord::Base) ⇒ Object



27
28
29
30
# File 'lib/active_record/schema_dumper.rb', line 27

def dump(connection = ActiveRecord::Base.connection, stream = STDOUT, config = ActiveRecord::Base)
  connection.create_schema_dumper(generate_options(config)).dump(stream)
  stream
end

Instance Method Details

#dump(stream) ⇒ Object



41
42
43
44
45
46
47
# File 'lib/active_record/schema_dumper.rb', line 41

def dump(stream)
  header(stream)
  extensions(stream)
  tables(stream)
  trailer(stream)
  stream
end

#fk_ignore_patternObject

:singleton-method: Specify a custom regular expression matching foreign keys which name should not be dumped to db/schema.rb.



24
# File 'lib/active_record/schema_dumper.rb', line 24

cattr_accessor :fk_ignore_pattern, default: /^fk_rails_[0-9a-f]{10}$/

#ignore_tablesObject

:singleton-method: A list of tables which should not be dumped to the schema. Acceptable values are strings as well as regexp if ActiveRecord::Base.schema_format == :ruby. Only strings are accepted if ActiveRecord::Base.schema_format == :sql.



18
# File 'lib/active_record/schema_dumper.rb', line 18

cattr_accessor :ignore_tables, default: []