Class: ActiveRecord::Associations::Builder::CollectionAssociation
- Inherits:
-
Association
- Object
- Association
- ActiveRecord::Associations::Builder::CollectionAssociation
- Defined in:
- lib/active_record/associations/builder/collection_association.rb
Overview
:nodoc:
Direct Known Subclasses
Constant Summary collapse
- CALLBACKS =
[:before_add, :after_add, :before_remove, :after_remove]
Instance Attribute Summary collapse
-
#block_extension ⇒ Object
readonly
Returns the value of attribute block_extension.
Attributes inherited from Association
#model, #name, #options, #reflection
Class Method Summary collapse
Instance Method Summary collapse
- #build ⇒ Object
-
#initialize(model, name, options, &extension) ⇒ CollectionAssociation
constructor
A new instance of CollectionAssociation.
- #show_deprecation_warnings ⇒ Object
- #writable? ⇒ Boolean
Methods inherited from Association
Constructor Details
#initialize(model, name, options, &extension) ⇒ CollectionAssociation
Returns a new instance of CollectionAssociation.
18 19 20 21 |
# File 'lib/active_record/associations/builder/collection_association.rb', line 18 def initialize(model, name, , &extension) super(model, name, ) @block_extension = extension end |
Instance Attribute Details
#block_extension ⇒ Object (readonly)
Returns the value of attribute block_extension.
12 13 14 |
# File 'lib/active_record/associations/builder/collection_association.rb', line 12 def block_extension @block_extension end |
Class Method Details
.build(model, name, options, &extension) ⇒ Object
14 15 16 |
# File 'lib/active_record/associations/builder/collection_association.rb', line 14 def self.build(model, name, , &extension) new(model, name, , &extension).build end |
Instance Method Details
#build ⇒ Object
23 24 25 26 27 28 29 |
# File 'lib/active_record/associations/builder/collection_association.rb', line 23 def build show_deprecation_warnings wrap_block_extension reflection = super CALLBACKS.each { |callback_name| define_callback(callback_name) } reflection end |
#show_deprecation_warnings ⇒ Object
35 36 37 38 39 40 41 |
# File 'lib/active_record/associations/builder/collection_association.rb', line 35 def show_deprecation_warnings [:finder_sql, :counter_sql].each do |name| if .include? name ActiveSupport::Deprecation.warn("The :#{name} association option is deprecated. Please find an alternative (such as using scopes).") end end end |
#writable? ⇒ Boolean
31 32 33 |
# File 'lib/active_record/associations/builder/collection_association.rb', line 31 def writable? true end |