Skip to content

Instantly share code, notes, and snippets.

@metaskills
Created June 30, 2010 13:22
Show Gist options
  • Save metaskills/458629 to your computer and use it in GitHub Desktop.
Save metaskills/458629 to your computer and use it in GitHub Desktop.
ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.merge!(
:sqlserver_db => Proc.new { |value|
value.respond_to?(:usec) && value.usec != 0 ?
value.strftime("%Y-%m-%dT%H:%M:%S.#{sprintf("%03d",value.usec/1000)}") :
value.strftime "%Y-%m-%dT%H:%M:%S"
}
)
>> Time.now.to_s(:sqlserver_db)
=> "2010-06-30T09:07:45.905"
def quoted_date(value)
if value.acts_like?(:time)
value.to_s(:sqlserver_db)
elsif value.acts_like?(:date)
value.strftime("%Y%m%d")
elsif value.class == String
quoted_date(Time.parse(value))
else
super
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment