quote(value, column = nil)
public
Quotes PostgreSQL-specific data types for SQL input.
Show source
def quote(value, column = nil)
return super unless column
case value
when Float
return super unless value.infinite? && column.type == :datetime
"'#{value.to_s.downcase}'"
when Numeric
return super unless column.sql_type == 'money'
"'#{value}'"
when String
case column.sql_type
when 'bytea' then "'#{escape_bytea(value)}'"
when 'xml' then "xml '#{quote_string(value)}'"
when /^bit/
case value
when /^[01]*$/ then "B'#{value}'"
when /^[0-9A-F]*$/ then "X'#{value}'"
end
else
super
end
else
super
end
end