展平嵌套的 Grails Domain 对象
Flatten a nested Grails Domain object
关于这个 ,有这套 Grails domain
classes:
class Hero {
String name
Float level
static hasOne = [familiar: Familiar]
}
class Familiar {
String name
Integer raceId
static belongsTo = [hero: Hero]
}
如何更改查询 Hero
的结果:
[
name: "Emphraim",
level: 99.0,
familiar: {
name: "Mhyrr",
raceId: 1
}
]
到平坦的:
[
{
"name": "Ephraim"
"level": 99.0,
"familiar_name": "Mhyrr"
"familiar_raceId": 1
}
]
没有将它一一映射到新的 HashMap
?我使用此代码查询 Hero
class:
def hero = Hero.find {
eq("name", "Ephraim")
}
正如 Joshua 提到的,您需要一个自定义编组器。有不同的方法,但我建议 this plugin
关于这个 domain
classes:
class Hero {
String name
Float level
static hasOne = [familiar: Familiar]
}
class Familiar {
String name
Integer raceId
static belongsTo = [hero: Hero]
}
如何更改查询 Hero
的结果:
[
name: "Emphraim",
level: 99.0,
familiar: {
name: "Mhyrr",
raceId: 1
}
]
到平坦的:
[
{
"name": "Ephraim"
"level": 99.0,
"familiar_name": "Mhyrr"
"familiar_raceId": 1
}
]
没有将它一一映射到新的 HashMap
?我使用此代码查询 Hero
class:
def hero = Hero.find {
eq("name", "Ephraim")
}
正如 Joshua 提到的,您需要一个自定义编组器。有不同的方法,但我建议 this plugin