Selective deep rendering of hasMany relationships in grails

前端 未结 1 1007
轮回少年
轮回少年 2021-01-05 01:33

For the following domain model:

class Route {
    String  name
    static  hasMany     = [checkPoints:CheckPoint]  
    static  belongsTo   = [someBigObject:         


        
相关标签:
1条回答
  • 2021-01-05 02:15

    You can register your own JSON marshaller for chosen classes and return properties which you want to render. Map can be done automatically by iteration over class fields. Marshaller ca be registered for example in bootstrap or in domain class during creation.

    JSON.registerObjectMarshaller(Route) {
        return [name:it.name, checkPoints:it.checkPoints]
    }
    

    There is nice article about it under: http://manbuildswebsite.com/2010/02/15/rendering-json-in-grails-part-3-customise-your-json-with-object-marshallers/

    Hope it helps

    0 讨论(0)
提交回复
热议问题