Ich habe eine Domain-Klasse Person
in meinem Grails-Anwendung, die ich in verschiedenen Formen (JSON) abhängig von dem Kontext ausgeben muss.Grails - Wie registriere ich einen bereits registrierten Objekt Marshaller
In einem Kontext muss ich nur ein paar Felder (sagen ID und Name) rendern. In einem anderen Zusammenhang möchte ich noch viel mehr rendern (ID, Name, Anmeldeinformationen, Alter usw.). Ich frage mich, ob es möglich ist, einen bestimmten Marshaller direkt nach dem Gebrauch abzumelden.
Wesentlichen, was ich suche, ist so etwas wie:
-------------------------------------------------------------
// context #1
JSON.registerObjectMarshaller(Person) {
... output just id and name
}
render myPerson as JSON
JSON.unregisterObjectMarshaller(Person) // how do i do this?
-------------------------------------------------------------
// context #2
JSON.registerObjectMarshaller(Person) {
... output all fields
}
render myPerson as JSON
JSON.unregisterObjectMarshaller(Person) // how do i do this?
-------------------------------------------------------------
Hinweis: I 2 leer Subklassen für Person erstellen können und dann getrennt Einweiser für jede registriert. Als Anzahl der Kontexte erhöhen Sie auch die Anzahl der Dummy-Unterklassen. Das ist sehr unsauber.
+1 Das ist schön. Und sehr sauber. Vielen Dank. Ich lege es rein und lasse Sie wissen, wie es gelaufen ist. – techfoobar
Hat super funktioniert. Vielen Dank. :) – techfoobar
Froh, dass es geklappt hat, habe einen guten. –