method
create_record
create_record(attrs)
private
Hide source
# File activerecord/lib/active_record/associations/association_collection.rb, line 492 def create_record(attrs) attrs.update(@reflection.options[:conditions]) if @reflection.options[:conditions].is_a?(Hash) ensure_owner_is_not_new _scope = self.construct_scope[:create] csm = @reflection.klass.send(:current_scoped_methods) options = (csm.blank? || !_scope.is_a?(Hash)) ? _scope : _scope.merge(csm.where_values_hash) record = @reflection.klass.send(:with_scope, :create => options) do @reflection.build_association(attrs) end if block_given? add_record_to_target_with_callbacks(record) { |*block_args| yield(*block_args) } else add_record_to_target_with_callbacks(record) end end