Sto utilizzando JBuilder per visualizzare le viste dell'API JSON della mia applicazione. Il problema che sto funzionando in è che le mie DateTimes vengono resi in questo modo:Rails jbuilder DateTime aggiungendo decimali al secondo
"2013-07-02T17: 03: 18.000Z"
... quando quello che voglio veramente è questo:
"2013-07-02T17: 03: 18Z"
non sono sicuro di dove quei decimali sono provenienti da ...
sto rendendo il campo nel tipico modo JBuilder:
json.my_datetime_field
ho un appuntamento formato inizializzatore nella mia app:
Date::DATE_FORMATS[:default] = '%Y/%m/%d %Z'
Time::DATE_FORMATS[:default] = '%Y/%m/%d %H:%M:%S %Z'
Date::DATE_FORMATS[:month_day_year] = '%m-%d-%Y'
Tuttavia, questo non sembra avere un impatto JBuilder, e ciò che è buono. Voglio il formato ISO8601 proveniente dalla mia API. A proposito, sono su Rails 4.0.0 final.
Non sono sicuro delle impostazioni di JBuilder, ma FYI - decimali decimali frazionari sono consentiti in ISO8601. 3 posti sono comuni, ma lo sono anche 6 o 7 posti. –
Sì, ho ceduto e modificato il mio formattatore della data del parser sul lato client per consentire i secondi frazionari. Lascerò questa domanda qui se qualcuno sa come modificare effettivamente l'output di jbuilder. Il più vicino a cui sono arrivato è DateTime con patch delle scimmie per restituire quello che voglio con "as_json", ma sembra davvero hacky. – elsurudo