# File lib/mongoid/relations/referenced/many_to_many.rb, line 27 def <<(*args) batched do [].tap do |ids| args.flatten.each do |doc| next unless doc append(doc) if persistable? || _creating? ids.push(doc.id) doc.save else base.send(metadata.foreign_key).push(doc.id) base.synced[metadata.foreign_key] = false end end if persistable? || _creating? base.push_all(metadata.foreign_key, ids) base.synced[metadata.foreign_key] = false end end end end