【问题标题】:Grails's yesterday in criteriaGrails 的昨天标准
【发布时间】:2011-12-22 11:35:10
【问题描述】:

我正在建立一个标准来获取某个域类的所有昨天创建的记录。类似的东西

def c = A.createCriteria().list {
  eq(<some operation on dateCreated>, <some operation on 'now'>)
}

提前致谢

【问题讨论】:

    标签: date grails criteria


    【解决方案1】:

    怎么样

    Date today = new Date().clearTime()
    Date yesterday = today - 1
    
    def c = A.createCriteria().list {
      ge(yesterday)
      lt(today)
    }
    

    【讨论】:

    • 应该阅读:Date today = new Date() today.clearTime()虽然答案很好@
    • @ekawas 这取决于您的 groovy 版本,在较新的版本(我认为从内存中的 1.8 开始) clearTime() 也返回日期。见groovy.codehaus.org/groovy-jdk/java/util/…
    【解决方案2】:

    在此处查看示例条件:http://www.grails.org/doc/1.3.7/ref/Domain%20Classes/withCriteria.html

    def now = new Date()
    between('dateCreated', now-1, now)
    

    将在现在的 24 小时内为您提供所有创建的内容。只需使用标准 Java 日期操作将您的 now 设置为午夜。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-28
      • 1970-01-01
      • 2013-08-08
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 2016-01-27
      相关资源
      最近更新 更多