module Arel::Crud
FIXME hopefully we can remove this
Public Instance Methods
compile_delete()
click to toggle source
# File lib/arel/crud.rb, line 55 def compile_delete dm = DeleteManager.new @engine dm.wheres = @ctx.wheres dm.from @ctx.froms dm end
compile_insert(values)
click to toggle source
# File lib/arel/crud.rb, line 34 def compile_insert values im = create_insert im.insert values im end
compile_update(values)
click to toggle source
# File lib/arel/crud.rb, line 5 def compile_update values um = UpdateManager.new @engine if Nodes::SqlLiteral === values relation = @ctx.from else relation = values.first.first.relation end um.table relation um.set values um.take @ast.limit.expr if @ast.limit um.order(*@ast.orders) um.wheres = @ctx.wheres um end
create_insert()
click to toggle source
# File lib/arel/crud.rb, line 40 def create_insert InsertManager.new @engine end
delete()
click to toggle source
# File lib/arel/crud.rb, line 62 def delete if $VERBOSE warn <<-eowarn delete (#{caller.first}) is deprecated and will be removed in ARel 4.0.0. Please switch to `compile_delete` eowarn end @engine.connection.delete compile_delete.to_sql, 'AREL' end
insert(values)
click to toggle source
FIXME: this method should go away
# File lib/arel/crud.rb, line 45 def insert values if $VERBOSE warn <<-eowarn insert (#{caller.first}) is deprecated and will be removed in ARel 4.0.0. Please switch to `compile_insert` eowarn end @engine.connection.insert compile_insert(values).to_sql end
update(values)
click to toggle source
FIXME: this method should go away
# File lib/arel/crud.rb, line 22 def update values if $VERBOSE warn <<-eowarn update (#{caller.first}) is deprecated and will be removed in ARel 4.0.0. Please switch to `compile_update` eowarn end um = compile_update values @engine.connection.update um.to_sql, 'AREL' end