Class: ActiveRecord::ConnectionAdapters::SQLServer::Type::Date

Inherits:
Type::Date
  • Object
show all
Defined in:
lib/active_record/connection_adapters/sqlserver/type/date.rb

Instance Method Summary collapse

Instance Method Details

#_formatted(value) ⇒ Object

Currently only called by our custom DateTime type for formatting



20
21
22
# File 'lib/active_record/connection_adapters/sqlserver/type/date.rb', line 20

def _formatted(value)
  value.to_s(:_sqlserver_dateformat)
end

#deserialize(value) ⇒ Object



33
34
35
# File 'lib/active_record/connection_adapters/sqlserver/type/date.rb', line 33

def deserialize(value)
  value.is_a?(Data) ? super(value.value) : super
end

#quoted(value) ⇒ Object



41
42
43
# File 'lib/active_record/connection_adapters/sqlserver/type/date.rb', line 41

def quoted(value)
  Utils.quote_string_single(value)
end

#serialize(value) ⇒ Object

We do not want the DateTime object to be turned into a string



26
27
28
29
30
# File 'lib/active_record/connection_adapters/sqlserver/type/date.rb', line 26

def serialize(value)
  return unless value.present?
  date = super(value).to_s(:_sqlserver_dateformat)
  Data.new date, self
end

#sqlserver_typeObject



7
8
9
# File 'lib/active_record/connection_adapters/sqlserver/type/date.rb', line 7

def sqlserver_type
  'date'.freeze
end

#type_cast_for_schema(value) ⇒ Object



37
38
39
# File 'lib/active_record/connection_adapters/sqlserver/type/date.rb', line 37

def type_cast_for_schema(value)
  serialize(value).quoted
end