Module: CompositePrimaryKeys::ActiveRecord::Relation::InstanceMethods
- Defined in:
- lib/composite_primary_keys/relation.rb
Instance Method Summary collapse
Instance Method Details
#delete(id_or_array) ⇒ Object
14 15 16 17 18 |
# File 'lib/composite_primary_keys/relation.rb', line 14 def delete(id_or_array) # CPK # where(@klass.primary_key => id_or_array).delete_all where(ids_predicate(id_or_array)).delete_all end |
#destroy(id) ⇒ Object
20 21 22 23 24 25 26 27 |
# File 'lib/composite_primary_keys/relation.rb', line 20 def destroy(id) # CPK #if id.is_a?(Array) # id.map { |one_id| destroy(one_id) } #else find(id).destroy #end end |
#ids_predicate(id) ⇒ Object
5 6 7 8 9 10 11 12 |
# File 'lib/composite_primary_keys/relation.rb', line 5 def ids_predicate(id) predicate = nil self.primary_key.zip(id).each do |key, value| eq = key.eq(value) predicate = predicate ? predicate.and(eq) : eq end predicate end |