Sha256: fdd5cf8ccaaad17d5f6c6322b09f301ec08150b9d201358961db2b3da17a8735
Contents?: true
Size: 895 Bytes
Versions: 4
Compression:
Stored size: 895 Bytes
Contents
module Quickery class QuickeryBuilder attr_reader :model attr_reader :depender_column_name attr_reader :dependee_column_name attr_reader :association_chains def initialize(model:, association_chains:, dependee_column_name:, depender_column_name:) @model = model @association_chains = association_chains @dependee_column_name = dependee_column_name @depender_column_name = depender_column_name end def add_to_model @model.quickery_builders ||= {} @model.quickery_builders[depender_column_name] = self end def add_to_association_chains association_chains.each do |association_chain| association_chain.quickery_builder = self end end def create_model_callbacks @callbacks_builder = CallbacksBuilder.new(quickery_builder: self) @callbacks_builder.build_callbacks end end end
Version data entries
4 entries across 4 versions & 1 rubygems