class Cuprum::Rails::Commands::InsertOne

Command for inserting an ActiveRecord record into the collection.

Private Instance Methods

process(entity:) click to toggle source
# File lib/cuprum/rails/commands/insert_one.rb, line 26
def process(entity:)
  step { validate_entity(entity) }

  entity.save

  entity
rescue ActiveRecord::RecordNotUnique
  error = Cuprum::Collections::Errors::AlreadyExists.new(
    collection_name:    collection_name,
    primary_key_name:   primary_key_name,
    primary_key_values: entity[primary_key_name]
  )
  failure(error)
end