Module: PaperTrailAssociationTracking::ModelConfig
- Included in:
- PaperTrail::ModelConfig
- Defined in:
- lib/paper_trail_association_tracking/model_config.rb
Overview
Configures an ActiveRecord model, mostly at application boot time, but also sometimes mid-request, with methods like enable/disable.
Instance Method Summary collapse
-
#setup(options = {}) ⇒ Object
private
Set up ‘@model_class` for PaperTrail.
- #version_association_class ⇒ Object
Instance Method Details
#setup(options = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Set up ‘@model_class` for PaperTrail. Installs callbacks, associations, “class attributes”, instance methods, and more.
10 11 12 13 14 15 16 17 18 |
# File 'lib/paper_trail_association_tracking/model_config.rb', line 10 def setup( = {}) super @model_class.class_attribute :version_association_class_name @model_class.version_association_class_name = .dig(:version_associations, :class_name) || "PaperTrail::VersionAssociation" setup_transaction_callbacks setup_callbacks_for_habtm([:join_tables]) end |
#version_association_class ⇒ Object
20 21 22 |
# File 'lib/paper_trail_association_tracking/model_config.rb', line 20 def version_association_class @version_association_class ||= @model_class.version_association_class_name.constantize end |