Module: Arsi::ArelTreeManager

Defined in:
lib/arsi/arel_tree_manager.rb

Instance Method Summary collapse

Instance Method Details

#where_sql(engine = ::Arel::Table.engine) ⇒ Object

This is inspired from Arel::SelectManager, a subclass of Arel::TreeManager just like Arel::UpdateManager and Arel::DeleteManager.



7
8
9
10
11
# File 'lib/arsi/arel_tree_manager.rb', line 7

def where_sql(engine = ::Arel::Table.engine)
  return if @ast.wheres.empty?

  ::Arel::Nodes::SqlLiteral.new("WHERE #{::Arel::Nodes::And.new(@ast.wheres).to_sql(engine)}")
end