Class: ActiveRecord::ConnectionAdapters::SQLServer::Type::DateTime
- Inherits:
-
Type::DateTime
- Object
- Type::DateTime
- ActiveRecord::ConnectionAdapters::SQLServer::Type::DateTime
- Includes:
- TimeValueFractional
- Defined in:
- lib/active_record/connection_adapters/sqlserver/type/datetime.rb
Direct Known Subclasses
Instance Method Summary collapse
- #deserialize(value) ⇒ Object
- #quoted(value) ⇒ Object
- #serialize(value) ⇒ Object
- #sqlserver_type ⇒ Object
- #type_cast_for_schema(value) ⇒ Object
Instance Method Details
#deserialize(value) ⇒ Object
23 24 25 |
# File 'lib/active_record/connection_adapters/sqlserver/type/datetime.rb', line 23 def deserialize(value) value.is_a?(Data) ? super(value.value) : super end |
#quoted(value) ⇒ Object
31 32 33 |
# File 'lib/active_record/connection_adapters/sqlserver/type/datetime.rb', line 31 def quoted(value) Utils.quote_string_single(value) end |
#serialize(value) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/active_record/connection_adapters/sqlserver/type/datetime.rb', line 13 def serialize(value) value = super return value unless value.acts_like?(:time) datetime = value.to_s(:_sqlserver_datetime).tap do |v| fraction = quote_fractional(value) v << ".#{fraction}" end Data.new datetime, self end |
#sqlserver_type ⇒ Object
9 10 11 |
# File 'lib/active_record/connection_adapters/sqlserver/type/datetime.rb', line 9 def sqlserver_type 'datetime'.freeze end |
#type_cast_for_schema(value) ⇒ Object
27 28 29 |
# File 'lib/active_record/connection_adapters/sqlserver/type/datetime.rb', line 27 def type_cast_for_schema(value) serialize(value).quoted end |