class ROM::RethinkDB::Commands::Create

Public Instance Methods

dataset() click to toggle source
# File lib/rom/rethinkdb/commands/create.rb, line 28
def dataset
  relation.dataset
end
execute(tuples) click to toggle source
# File lib/rom/rethinkdb/commands/create.rb, line 10
def execute(tuples)
  insert_tuples =  [tuples].flatten.map do |tuple|
    attributes = input[tuple]
    validator.call(attributes)
    attributes.to_h
  end

  insert(insert_tuples)
end
insert(tuples) click to toggle source
# File lib/rom/rethinkdb/commands/create.rb, line 20
def insert(tuples)
  pks = dataset.scope.insert(tuples)
        .run(dataset.connection)["generated_keys"]

  dataset.filter { |user| relation.rql.expr(pks).contains(user["id"]) }
    .to_a
end