ドメインクラスPerson
をgrailsアプリケーションに用意しました。コンテキストによっては別のフォーム(JSON)で出力する必要があります。Grails - 既に登録されているオブジェクトマーシャラの登録を解除するには
1つのコンテキストでは、2つのフィールド(IDと名前など)だけをレンダリングする必要があります。別の文脈では、私はもっと多く(ID、名前、信任状、年齢など)をレンダリングしたい。私は使用直後に特定のマーシャルを登録解除することが可能かどうか疑問に思っています。私は人のために2つの空のサブクラスを作成し、それぞれに登録された別々のマーシャラーを持つことができ:
-------------------------------------------------------------
// 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?
-------------------------------------------------------------
注:私が探しているものを基本的に
は次のようなものです。 のコンテキスト番号が増えると、ダミーサブクラスの数も増えます。これは非常に汚れています。
+1これは美しいです。そしてとてもきれいです。ありがとうございました。私はそれを入れて、それがどのように行ったかを伝えます。 – techfoobar
うまくいった。ありがとうございました。 :) – techfoobar
それはうまくいってうれしい、うれしい。 –