Class: ActiveSupport::TimeWithZone

Inherits:
Object
  • Object
show all
Defined in:
lib/spree/core.rb

Instance Method Summary collapse

Instance Method Details

#as_json(options = nil) ⇒ Object

Coerces time to a string for JSON encoding. The default format is ISO 8601. You can get %Y/%m/%d %H:%M:%S +offset style by setting ActiveSupport::JSON::Encoding.use_standard_json_time_format to false.

Examples

# With ActiveSupport::JSON::Encoding.use_standard_json_time_format = true
Time.utc(2005,2,1,15,15,10).in_time_zone.to_json
# => "2005-02-01T15:15:10.001Z"

# With ActiveSupport::JSON::Encoding.use_standard_json_time_format = false
Time.utc(2005,2,1,15,15,10).in_time_zone.to_json
# => "2005/02/01 15:15:10 +0000"


76
77
78
79
80
81
82
# File 'lib/spree/core.rb', line 76

def as_json(options = nil)
  if ActiveSupport::JSON::Encoding.use_standard_json_time_format
    xmlschema(3)
  else
    %(#{time.strftime("%Y/%m/%d %H:%M:%S")} #{formatted_offset(false)})
  end
end