instance method
to_sql
Ruby on Rails 5.0.7.2
Since v3.0.20Signature
to_sql()
Returns sql statement for the relation.
User.where(name: 'Oscar').to_sql
# => SELECT "users".* FROM "users" WHERE "users"."name" = 'Oscar'
Source
# File activerecord/lib/active_record/relation.rb, line 606
def to_sql
@to_sql ||= begin
relation = self
connection = klass.connection
visitor = connection.visitor
if eager_loading?
find_with_associations { |rel| relation = rel }
end
binds = relation.bound_attributes
binds = connection.prepare_binds_for_database(binds)
binds.map! { |value| connection.quote(value) }
collect = visitor.accept(relation.arel.ast, Arel::Collectors::Bind.new)
collect.substitute_binds(binds).join
end
end
Defined in activerecord/lib/active_record/relation.rb line 606
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveRecord::Relation