对于以下域模型:
class Route {
String name
static hasMany = [checkPoints:CheckPoint]
static belongsTo = [someBigObject:SomeBigObject]
static mapping = {
checkPoints lazy: false
}
}
我需要返回一个具体的Route
作为来自 Web 服务的 JSON。我希望这个 JSON 包含所有checkPoints
但没有其他成分(即:someBigObject
).
If I do
def route = Route.findById(id)
render route as JSON
我得到的只是 idcheckPoints
,没有获取其他字段:
{
"class": "com.example.Route",
"id": 1,
"checkPoints": [
{
"class": "CheckPoint",
"id": 1
},
{
"class": "CheckPoint",
"id": 2
},
{
"class": "CheckPoint",
"id": 4
},
{
"class": "CheckPoint",
"id": 3
}
],
"someBigObject": {
"class": "SomeBigObject",
"id": 2
}
}
但如果我这样做
JSON.use('deep') {
render route as JSON
}
我得到了一切。我的意思是,几乎所有数据库都是通过各种关系获取的。
有没有办法在不手动创建 jsonMaps 的情况下做到这一点?