是否有可能通过嵌套的属性进行排序哪里查询?
我有2个域类:
class Parent {
String name
Child child
}
Run Code Online (Sandbox Code Playgroud)
和
class Child {
String name
static belongsTo = [parent: Parent]
}
Run Code Online (Sandbox Code Playgroud)
这有效:
Parent.where {}.list(sort: 'name')
Run Code Online (Sandbox Code Playgroud)
这不是:
Parent.where {}.list(sort: 'child.name')
Run Code Online (Sandbox Code Playgroud)
我有一个错误:
could not resolve property: child.name of: Parent
Run Code Online (Sandbox Code Playgroud)
我使用的是grails 2.3.x.
And*_*tos 10
请参阅:Grails - 按域关系属性排序(使用createCriteria())
解决方案1:
def criteria = Child.createCriteria();
println criteria.list{
createAlias("parent","_parent")
order( "_parent.name")
}
Run Code Online (Sandbox Code Playgroud)
解决方案2:
def criteria = Child.createCriteria();
println criteria.list{
parent {
order("name")
}
}
Run Code Online (Sandbox Code Playgroud)
解决方案3:
class Child {
String name
static belongsTo = [parent: Parent]
public String getParentName(){
return parent.getName()
}
}
println Child.listOrderByParentName()
Run Code Online (Sandbox Code Playgroud)
希望能帮助到你.
归档时间: |
|
查看次数: |
3072 次 |
最近记录: |