繁体   English   中英

Grails Groovy-获取一对多关系的最小和最大日期

[英]Grails Groovy - Getting min and max date for one to many relationship

我在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 :)

namedQueries应该可以解决问题

class MyClass {
  static hasMany = [events : Event]

  static namedQueries = {

    firstEvent {
      events{
        projections{
          min 'dateCreated'
        }
      }
    }

    lastEvent {
      events{
        projections{
          max 'dateCreated'
        }
      }
    }

  }
}

致电:

Date first = myClassIntance.firstEvent().get()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM