Class: RademadeAdmin::Model::Graph

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/rademade_admin/model/graph.rb

Instance Method Summary collapse

Instance Method Details

#add_pair(module_name, controller_name, inner) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/rademade_admin/model/graph.rb', line 7

def add_pair(module_name, controller_name, inner)
  # Controller includes configuration for mapping model
  controller = LoaderService.const_get("#{module_name}/#{controller_name}_controller")
  controller.configuration.model(controller_name.classify) unless controller.model_name

  model = controller.model_class

  unless @model_infos[model.to_s]
    model_reflection = RademadeAdmin::Model::Reflection.new(model, controller_name, module_name)
    model_info = RademadeAdmin::Model::Info.new(model_reflection, controller.configuration, inner)
    @model_infos[model.to_s] = model_info
  end
end

#model_info(model) ⇒ Object



21
22
23
# File 'lib/rademade_admin/model/graph.rb', line 21

def model_info(model)
  @model_infos[model.to_s]
end

#root_modelsObject



25
26
27
# File 'lib/rademade_admin/model/graph.rb', line 25

def root_models
  @root_models ||= @model_infos.select { |_, model_info| not model_info.nested? }.values
end