3

多くの従業員を持つ Store というクラスがあるとします。私の RESTful listXML メソッドは次のようになります。

def listXML = {
    render Store.list() as XML
}

結果は次のようになります。

<stores>
  <store id="1">
   <name>My Store</name>
   <employees>
     <employee id="1" />
   </employees>
  </store>
</store>

私の質問は、各 Employee クラスのすべてのデータをどのように含めて、XML が次のようになるかということです。

   <stores>
      <store id="1">
       <name>My Store</name>
       <employees>
         <employee id="1">
           <name>John Smith</name>
           <hireDate>2008-01-01</hireDate>
         </employee>
       </employees>
      </store>
    </store>
4

2 に答える 2

5

コントローラーで、ディープ コンバーターをインポートする必要があります。

import grails.converters.deep.XML

これについては、 Converters Referenceの最初の数段落で読むことができます。

于 2009-01-19T05:45:02.480 に答える
4

Grails 1.1 の時点で、grails-app/conf/Config.groovy に以下を含めることで、Grails をデフォルトで深くシリアライズするように構成できます。

grails.converters.xml.default.deep = true

1.1 では、コンバーターの名前付き構成も導入されています。ディープ コンバーターは非推奨になり、代わりに名前付きの構成 "deep" を使用する必要があります。

XML.use("deep") {
   render model as XML
}
于 2009-01-19T10:32:50.763 に答える