Sha256: 196b85a92319de9d6eda5a1a7c0764e56d1f50a2e87b572c958e11b571224247
Contents?: true
Size: 694 Bytes
Versions: 2
Compression:
Stored size: 694 Bytes
Contents
require 'rom/sql/commands' require 'rom/sql/commands/error_wrapper' require 'rom/sql/commands/transaction' module ROM module SQL module Commands class Create < ROM::Commands::Create include Transaction include ErrorWrapper def execute(tuples) insert_tuples = Array([tuples]).flatten.map do |tuple| attributes = input[tuple] validator.call(attributes) attributes.to_h end insert(insert_tuples) end def insert(tuples) pks = tuples.map { |tuple| relation.insert(tuple) } relation.where(relation.primary_key => pks) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rom-sql-0.4.3 | lib/rom/sql/commands/create.rb |
rom-sql-0.4.1 | lib/rom/sql/commands/create.rb |