Але*_*тин 4 grails criteria grails-orm
我在域模型中有两个类:
class Project {
String name
Integer fund
}
class Task {
String name
Integer weight
Project project
}
Run Code Online (Sandbox Code Playgroud)
如何使用Task.name =“ something”获得Project?
如果我需要Project.name =“ something”的Task,可以通过createAlias使用条件来完成,但是如何加入Task
c = Project.createCriteria()
criteriaRes = c.list {
}
Run Code Online (Sandbox Code Playgroud)
我不确定这是否会有所帮助,但是我在SQL方面做了很多工作,因此当我想出如何创建条件或在哪里查询时,我首先在HQL中进行操作,因为它类似于SQL。如果您不打算使用NoSQL数据库,那么HQL是一个不错的选择,但是条件和查询可以在GORM实现之间移植。
因此,执行您想要的HQL查询是
def projects = Task.executeQuery(
'select t.project from Task t where t.name=:taskName',
[taskName: 'something'])
Run Code Online (Sandbox Code Playgroud)
一个类似的条件查询将是
def projects = Task.createCriteria().list {
eq 'name', 'something'
projections {
property 'project'
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3379 次 |
| 最近记录: |