class Arel::InsertManager
Public Class Methods
Source
# File lib/arel/insert_manager.rb, line 4 def initialize super @ast = Nodes::InsertStatement.new end
Calls superclass method
Arel::TreeManager::new
Public Instance Methods
Source
# File lib/arel/insert_manager.rb, line 40 def create_values values, columns Nodes::Values.new values, columns end
Source
# File lib/arel/insert_manager.rb, line 44 def create_values_list(rows) Nodes::ValuesList.new(rows) end
Source
# File lib/arel/insert_manager.rb, line 21 def insert fields return if fields.empty? if String === fields @ast.values = Nodes::SqlLiteral.new(fields) else @ast.relation ||= fields.first.first.relation values = [] fields.each do |column, value| @ast.columns << column values << value end @ast.values = create_values values, @ast.columns end self end
Source
# File lib/arel/insert_manager.rb, line 9 def into table @ast.relation = table self end
Source
# File lib/arel/insert_manager.rb, line 17 def select select @ast.select = select end
Source
# File lib/arel/insert_manager.rb, line 15 def values= val; @ast.values = val; end