从Grails Controller中的集中删除空记录

时间:2010-09-28 14:48:41

标签: grails model controller

所以,Grails让我觉得自己再次变得愚蠢,我对此很陌生。我有一个grails域,它在postgresql数据库中映射生产中的表。我试图通过日期字段'migratedDate'来跟踪项目的进度。每当进程发生时,该字段都有时间戳。

我似乎无法创建一个仅使用非空值填充地图的控制器。我尝试过的所有内容都是将所有记录都返回到视图中。我可以补充说:

def list3 = {
    [tape : Tapes.list(sort:"migratedDate", order:"asc")]
}

以便控制器可以删除“migratedDate”为空的任何记录

我确定我错过了一些简单的事情。

谢谢!

2 个答案:

答案 0 :(得分:0)

试试这个:

def myAction = {
    def c = Tape.createCriteria()
    def tapes = c.list(sort: 'migratedDate', order: 'asc') {
        isNotNull('migratedDate')
    }
    [tape: tapes]
}

答案 1 :(得分:0)

使用动态查找器

def list3 = {
    [tape : Tapes.findAllByMigratedDateIsNotNull([sort:"migratedDate", order:"asc"])]
}