method
delete_records
v3.0.0 -
Show latest stable
- Class:
ActiveRecord::Associations::HasAndBelongsToManyAssociation
delete_records(records)protected
No documentation available.
# File activerecord/lib/active_record/associations/has_and_belongs_to_many_association.rb, line 76
def delete_records(records)
if sql = @reflection.options[:delete_sql]
records.each { |record| @owner.connection.delete(interpolate_sql(sql, record)) }
else
relation = Arel::Table.new(@reflection.options[:join_table])
relation.where(relation[@reflection.primary_key_name].eq(@owner.id).
and(relation[@reflection.association_foreign_key].in(records.map { |x| x.id }))
).delete
end
end