class ROM::FMP::Commands::Create
Public Instance Methods
execute(tuples)
click to toggle source
include Transaction
# File lib/rom/fmp/commands/create.rb, line 10 def execute(tuples) insert_tuples = Array([tuples]).flatten.map do |tuple| attributes = input[tuple] validator.call(attributes) attributes.to_h end insert(insert_tuples) rescue *ERRORS => e raise ConstraintError, e.message end
insert(tuples)
click to toggle source
# File lib/rom/fmp/commands/create.rb, line 22 def insert(tuples) pks = tuples.map { |tuple| relation.insert(tuple) } relation.where(relation.primary_key => pks) end