Module: Rails::Schema

Defined in:
lib/rails/schema.rb,
lib/rails/schema/railtie.rb,
lib/rails/schema/version.rb,
lib/rails/schema/configuration.rb,
lib/rails/schema/transformer/edge.rb,
lib/rails/schema/transformer/node.rb,
lib/rails/schema/extractor/column_reader.rb,
lib/rails/schema/extractor/model_scanner.rb,
lib/rails/schema/renderer/html_generator.rb,
lib/rails/schema/transformer/graph_builder.rb,
lib/rails/schema/extractor/association_reader.rb,
lib/rails/schema/extractor/packwerk_discovery.rb,
lib/rails/schema/extractor/schema_file_parser.rb,
lib/rails/schema/extractor/structure_sql_parser.rb,
lib/rails/schema/extractor/mongoid/column_reader.rb,
lib/rails/schema/extractor/mongoid/model_adapter.rb,
lib/rails/schema/extractor/mongoid/model_scanner.rb,
lib/rails/schema/extractor/mongoid/association_reader.rb

Defined Under Namespace

Modules: Extractor, Renderer, Transformer Classes: Configuration, Error, Railtie

Constant Summary collapse

VERSION =
"0.1.7"

Class Method Summary collapse

Class Method Details

.configurationObject



21
22
23
# File 'lib/rails/schema.rb', line 21

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



25
26
27
# File 'lib/rails/schema.rb', line 25

def configure
  yield(configuration)
end

.generate(output: nil) ⇒ Object



33
34
35
36
37
38
39
# File 'lib/rails/schema.rb', line 33

def generate(output: nil)
  if mongoid_mode?
    generate_mongoid(output: output)
  else
    generate_active_record(output: output)
  end
end

.mongoid_mode?Boolean

Returns:

  • (Boolean)


41
42
43
44
45
46
47
48
49
50
# File 'lib/rails/schema.rb', line 41

def mongoid_mode?
  case configuration.schema_format
  when :mongoid
    true
  when :auto
    defined?(::Mongoid::Document) ? true : false
  else
    false
  end
end

.reset_configuration!Object



29
30
31
# File 'lib/rails/schema.rb', line 29

def reset_configuration!
  @configuration = Configuration.new
end