Methods
Public Instance methods
has_and_belongs_to_many_without_method_redefinition(association_id, options = {}, &extension)
    # File test/ar_model_adaptation.rb, line 12
12:       def has_and_belongs_to_many_without_method_redefinition(association_id, options = {}, &extension)
13:         options.assert_valid_keys(
14:           :class_name, :table_name, :foreign_key, :association_foreign_key, :conditions, :include,
15:           :join_table, :finder_sql, :delete_sql, :insert_sql, :order, :uniq, :before_add, :after_add, 
16:           :before_remove, :after_remove, :extend
17:         )
18: 
19:         options[:extend] = create_extension_module(association_id, extension) if block_given?
20: 
21:         association_name, association_class_name, association_class_primary_key_name =
22:               associate_identification(association_id, options[:class_name], options[:foreign_key])
23: 
24:         require_association_class(association_class_name)
25: 
26:         options[:join_table] ||= join_table_name(undecorated_table_name(self.to_s), undecorated_table_name(association_class_name))
27: 
28:         add_multiple_associated_save_callbacks(association_name)
29:       
30:         collection_accessor_methods(association_name, association_class_name, association_class_primary_key_name, options, HasAndBelongsToManyAssociation)
31: 
32:         add_association_callbacks(association_name, options)
33:         
34:         # deprecated api

35:         deprecated_collection_count_method(association_name)
36:         deprecated_add_association_relation(association_name)
37:         deprecated_remove_association_relation(association_name)
38:         deprecated_has_collection_method(association_name)
39:       end
remove_association(*names)
    # File test/ar_model_adaptation.rb, line 4
 4:       def remove_association *names
 5:         if names.length == 1
 6:           assocs = @inheritable_attributes[:associations].select{ |a| a.name == names[0] }
 7:           assocs.each {|assoc| @inheritable_attributes[:associations].delete assoc }
 8:         else
 9:           names.each {|assoc| remove_association(assoc)}
10:         end
11:       end