class Arel::UpdateManager

Public Class Methods

new() click to toggle source
Calls superclass method Arel::TreeManager::new
# File lib/arel/update_manager.rb, line 4
def initialize
  super
  @ast = Nodes::UpdateStatement.new
  @ctx = @ast
end

Public Instance Methods

key() click to toggle source
# File lib/arel/update_manager.rb, line 19
def key
  @ast.key
end
key=(key) click to toggle source
# File lib/arel/update_manager.rb, line 15
def key= key
  @ast.key = Nodes.build_quoted(key)
end
order(*expr) click to toggle source
# File lib/arel/update_manager.rb, line 23
def order *expr
  @ast.orders = expr
  self
end
set(values) click to toggle source
# File lib/arel/update_manager.rb, line 44
def set values
  if String === values
    @ast.values = [values]
  else
    @ast.values = values.map { |column,value|
      Nodes::Assignment.new(
        Nodes::UnqualifiedColumn.new(column),
        value
      )
    }
  end
  self
end
table(table) click to toggle source

UPDATE table

# File lib/arel/update_manager.rb, line 30
def table table
  @ast.relation = table
  self
end
take(limit) click to toggle source
# File lib/arel/update_manager.rb, line 10
def take limit
  @ast.limit = Nodes::Limit.new(Nodes.build_quoted(limit)) if limit
  self
end
where(expr) click to toggle source
# File lib/arel/update_manager.rb, line 39
def where expr
  @ast.wheres << expr
  self
end
wheres=(exprs) click to toggle source
# File lib/arel/update_manager.rb, line 35
def wheres= exprs
  @ast.wheres = exprs
end