我的域类有MyClass和Event之间的一对多关系:
class MyClass {
String name
Date firstEvent
Date lastEvent
static hasMany = [events : Event]
}
class Event {
String name
Date dateCreated
static belongsTo = [indicator : Indicator]
}
设置firstEvent以反映min(dateCreated)和lastEvent以反映相关事件的max(dateCreated)的最佳方法是什么?
也许有一种方法可以在控制器中访问这些数据,而不必在域类中使用它?
感谢任何帮助。我是grails的新手:)
答案 0 :(得分:1)
namedQueries应该做的伎俩
class MyClass {
static hasMany = [events : Event]
static namedQueries = {
firstEvent {
events{
projections{
min 'dateCreated'
}
}
}
lastEvent {
events{
projections{
max 'dateCreated'
}
}
}
}
}
致电:
Date first = myClassIntance.firstEvent().get()