Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

rails dates with json

I am implementing a Facebook application and using AJAX/JSON.

However the JSON structures that are returned have this format 2010-05-30T06:14:00Z.

I'm calling Game.all.to_json in controller action.

How can I convert them to a normal date format?

Is it easier to do it from the server side or the client side using fbjs? There are a lot of bugs with fbjs.

So i would prefer using a solution from the Server side using (Active Records). Like converting the data before sending the JSON structures.

like image 405
fenec Avatar asked May 30 '10 06:05

fenec


Video Answer


2 Answers

The way I added my own custom format to the json I was returning was to add a monkey patch to the ActiveSupport TimeWithZone class.

Add a file in the config/initializers folder with the following contents:

class ActiveSupport::TimeWithZone     def as_json(options = {})         strftime('%Y-%m-%d %H:%M:%S')     end end 
like image 92
Geekygecko Avatar answered Oct 06 '22 14:10

Geekygecko


With timezone working in all major browsers and ie7+:

class ActiveSupport::TimeWithZone   def as_json(options = {})     strftime('%Y/%m/%d %H:%M:%S %z')   end end 
like image 20
DrewB Avatar answered Oct 06 '22 13:10

DrewB