module Scenic::SchemaDumper
@api private
Public Instance Methods
tables(stream)
click to toggle source
Calls superclass method
# File lib/scenic/schema_dumper.rb, line 6 def tables(stream) super views(stream) end
views(stream)
click to toggle source
# File lib/scenic/schema_dumper.rb, line 11 def views(stream) if dumpable_views_in_database.any? stream.puts end dumpable_views_in_database.each do |view| stream.puts(view.to_schema) indexes(view.name, stream) end end
Private Instance Methods
dumpable_views_in_database()
click to toggle source
# File lib/scenic/schema_dumper.rb, line 24 def dumpable_views_in_database @dumpable_views_in_database ||= Scenic.database.views.reject do |view| ignored?(view.name) end end
ignored?(table_name)
click to toggle source
This method will be present in Rails 4.2.0 and can be removed then.
# File lib/scenic/schema_dumper.rb, line 32 def ignored?(table_name) ["schema_migrations", ignore_tables].flatten.any? do |ignored| case ignored when String then remove_prefix_and_suffix(table_name) == ignored when Regexp then remove_prefix_and_suffix(table_name) =~ ignored else raise StandardError, "ActiveRecord::SchemaDumper.ignore_tables accepts an array of String and / or Regexp values." end end end