module DynamicActiveModel::Explorer
DynamicActiveModel::Explorer
creates models and relationships
Public Class Methods
build_relationships!(database, relationships)
click to toggle source
# File lib/dynamic-active-model/explorer.rb, line 22 def self.build_relationships!(database, relationships) relations = Associations.new(database) relationships.each do |table_name, foreign_keys| foreign_keys.each do |foreign_key, relationship_name| relations.add_foreign_key(table_name, foreign_key, relationship_name) end end relations.build! end
create_models!(base_module, connection_options, skip_tables)
click to toggle source
# File lib/dynamic-active-model/explorer.rb, line 12 def self.create_models!(base_module, connection_options, skip_tables) database = Database.new(base_module, connection_options) skip_tables.each do |table_name| table_name = Regexp.new("^#{table_name}") if table_name.include?('*') database.skip_table(table_name) end database.create_models! database end
explore(base_module, connection_options, skip_tables = [], relationships = {})
click to toggle source
# File lib/dynamic-active-model/explorer.rb, line 6 def self.explore(base_module, connection_options, skip_tables = [], relationships = {}) database = create_models!(base_module, connection_options, skip_tables) build_relationships!(database, relationships) database end