method
type_to_sql
Ruby on Rails latest stable (v2.1.0)
-
0 notes -
Class: ActiveRecord::ConnectionAdapters::SchemaStatements
- v1.0.0
- v1.1.0
- v1.1.1
- v1.1.2
- v1.1.3
- v1.1.4
- v1.1.5
- v1.1.6
- v1.2.0
- v1.2.1
- v1.2.2
- v1.2.3
- v1.2.4
- v1.2.5
- v1.2.6
- v2.0.0
- v2.0.1
- v2.0.2
- v2.0.3
- 2.1.0 (0)
- What's this?
type_to_sql(type, limit = nil, precision = nil, scale = nil)
public
Hide source
# File activerecord/lib/active_record/connection_adapters/abstract/schema_statements.rb, line 346 def type_to_sql(type, limit = nil, precision = nil, scale = nil) #:nodoc: if native = native_database_types[type] column_type_sql = native.is_a?(Hash) ? native[:name] : native if type == :decimal # ignore limit, use precision and scale scale ||= native[:scale] if precision ||= native[:precision] if scale column_type_sql << "(#{precision},#{scale})" else column_type_sql << "(#{precision})" end elsif scale raise ArgumentError, "Error adding decimal column: precision cannot be empty if scale if specified" end elsif limit ||= native.is_a?(Hash) && native[:limit] column_type_sql << "(#{limit})" end column_type_sql else type end end

