Festlegen des Datumsformats für den JSON-Konverter in Grails

8

Ich habe eine Methode in meinem Grails-Controller, die ein JSON zurückgeben soll, eine Eigenschaft des JSON ist ein Date-Objekt, aber wenn ich das tue:

%Vor%

Die Ausgabe ist wie folgt:

%Vor%

Gibt es eine Möglichkeit, das vom Konverter verwendete Standard-Datumsformat zu ändern?

Ich habe versucht, die Eigenschaft grails.converters.json.date und auch grails.date.formats in Config.groovy zu setzen, aber das funktioniert nicht.
Mache ich etwas falsch oder gibt es einen anderen Weg, es zu tun?

Danke

    
rascio 05.02.2013, 11:19
quelle

2 Antworten

7

Ich benutze in der Regel einen benutzerdefinierten Marshaller. Angenommen, Sie haben folgende Domain

%Vor%

Erstellen Sie eine Klasse unter src / groovy wie folgt

%Vor%

Dann in Ihrer Bootstrap-Datei machen Sie folgendes:

%Vor%

Der Grund, warum ich das als Array mache, ist, dass ich mehrere Marshaller habe.

Wenn Sie nun address as JSON verwenden, erhalten Sie den von Ihnen beschriebenen JSON und das korrekte Datumsformat. Ich weiß, das scheint ein Overkill für das Formatieren eines Datums in JSON zu sein, aber das hat viele andere Vorteile.

    
Gregg 05.02.2013, 14:25
quelle
5

Wenn Sie einen Standard-JSON-Marshaller für alle Datentypen möchten, können Sie auch etwas sehr einfaches verwenden, wie in diese SO-Antwort . @ Greggs Antwort ist viel flexibler für einzelne Domain-Klassen.

    
Jeff Smith 14.02.2013 00:38
quelle

Tags und Links