module ActiveRecord::Persistence
Public Instance Methods
_create_record(attribute_names = self.attribute_names) { |self| ... }
click to toggle source
# File lib/composite_primary_keys/persistence.rb, line 74 def _create_record(attribute_names = self.attribute_names) attribute_names = attributes_for_create(attribute_names) new_id = self.class._insert_record( attributes_with_values(attribute_names) ) # CPK if self.composite? self.id = self.id.zip(Array(new_id)).map {|id1, id2| id2.nil? ? id1 : id2} else self.id ||= new_id if self.class.primary_key end @new_record = false @previously_new_record = true yield(self) if block_given? id end