我有以下域类:
class PreparedToWork {
String location
static hasMany = [assessors: Assessor]
}
class Assessor {
//Some Properties
static belongsTo = [PreparedToWork]
static hasMany = [preparedToWork: PreparedToWork]
}
我想使用仅准备工作ID来检索准备在某个位置工作的所有评估员。我在实际数据库中有我的联接表,所以我确定这种关系很好,但是尝试了各种查询选项,但失败了。
应用信息:
最佳答案
我认为以下是描述您域的更自然的方法
class Location {
String name
static hasMany = [preparedToWork: Assessor]
}
class Assessor {
//Some Properties
static belongsTo = [Location]
static hasMany = [preparedToWork: Location]
}
然后,您可以检索准备在某个位置工作的所有评估员,
Assessor.executeQuery(
"from Assessor a join a.preparedToWork l where l.id = ?", [locationId])
关于hibernate - 如何在Grails中查询多对多关系?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38594726/