Class: Dbviewer::Database::DynamicModelFactory
- Inherits:
-
Object
- Object
- Dbviewer::Database::DynamicModelFactory
- Defined in:
- lib/dbviewer/database/dynamic_model_factory.rb
Overview
DynamicModelFactory creates and manages ActiveRecord models for database tables
Instance Method Summary collapse
-
#get_model_for(table_name) ⇒ Class
Get or create an ActiveRecord model for a table.
-
#initialize(connection, cache_manager) ⇒ DynamicModelFactory
constructor
Initialize with a connection and cache manager.
Constructor Details
#initialize(connection, cache_manager) ⇒ DynamicModelFactory
Initialize with a connection and cache manager
8 9 10 11 |
# File 'lib/dbviewer/database/dynamic_model_factory.rb', line 8 def initialize(connection, cache_manager) @connection = connection @cache_manager = cache_manager end |
Instance Method Details
#get_model_for(table_name) ⇒ Class
Get or create an ActiveRecord model for a table
16 17 18 19 20 21 22 23 |
# File 'lib/dbviewer/database/dynamic_model_factory.rb', line 16 def get_model_for(table_name) cached_model = @cache_manager.get_model(table_name) return cached_model if cached_model model = create_model_for(table_name) @cache_manager.store_model(table_name, model) model end |