【问题标题】:Create a criteria in Grails在 Grails 中创建条件
【发布时间】:2014-08-20 04:10:04
【问题描述】:

我的项目有两个域,第一个是申请人,另一个是筛选。

关于我得到的申请人:

  • 字符串名称
  • 字符串年龄

在筛选时我得到了:

  • 字符串状态
  • 属于:[申请人:申请人]

现在我想招募所有年龄

这是我的代码:

def applicant = Applicant.queryForApp(params.age)

queryForApp{age->
lt('age', age)
}

但是,申请人必须具有被录用的身份。我不知道如何过滤状态为“已雇用”的申请人,因为它在另一个域类上。

我们将不胜感激任何解决方案。

【问题讨论】:

  • 目前不可能,因为ApplicantScreening 之间的关系是单向的。除非您将 Screening 添加到 Applicant,否则无法使用标准查询此内容

标签: grails criteria hibernate-criteria


【解决方案1】:

以下标准应该有效(未经测试):

List<Applicant> applicants = Screening.withCriteria {
    eq 'status', 'HIRED'
    applicant {
        lt 'age', 30
    }
    projections {
        property 'applicant'
    }
}

【讨论】:

  • 500 感谢您的回答:),兄弟,您从哪里学到的?我检查了 grails 文档,但没有太多示例。
  • 我很高兴它成功了!我在用 Grails 做了很多项目后学到了:-P。在文档grails.org/doc/latest/guide/GORM.html#criteria 的“Querying with Projections”部分中,有一个指向 Hibernate Projections 文档的链接。
猜你喜欢
  • 1970-01-01
  • 2011-06-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-22
  • 1970-01-01
  • 2016-05-12
  • 2019-02-15
相关资源
最近更新 更多