class RailsBestPractices::Prepares::ModelPrepare
Remember models and model associations.
Constants
- ASSOCIATION_METHODS
Public Class Methods
new()
click to toggle source
# File lib/rails_best_practices/prepares/model_prepare.rb, line 26 def initialize @models = Prepares.models @model_associations = Prepares.model_associations @model_attributes = Prepares.model_attributes @methods = Prepares.model_methods end
Private Instance Methods
remember_association(node)
click to toggle source
remember associations, with class to association names.
# File lib/rails_best_practices/prepares/model_prepare.rb, line 166 def remember_association(node) association_meta = node.message.to_s association_name = node.arguments.all.first.to_s arguments_node = node.arguments.all.last if arguments_node.hash_value('class_name').present? association_class = arguments_node.hash_value('class_name').to_s end association_class ||= association_name.classify @model_associations.add_association(current_class_name, association_name, association_meta, association_class) end