问候,我想订购另一个域类拥有1:m关系的热切获取的域对象,但无法知道如何执行此操作。当我尝试简化项目时,我收到一个错误。以下是我的尝试:
class Picture {
String name
static hasMany = [comments:Comment]
static mapping = {
comments(lazy:false, sort:'content', order:'desc')
}
}
class Comment {
String content
Date dateCreated
static belongsTo = [Picture]
}
现在,在测试使用println Picture.get(1) as JSON
获取记录的方式时,我收到以下错误:
java.sql.SQLException: Column not found: COMMENTS0_.CONTENT in statement [select comments0_.picture_comments_id as picture1_0_, comments0_.comment_id as comment2_0_ from picture_comment comments0_ where comments0_.picture_comments_id=? order by comments0_.content desc
如果没有sort:'content', order:'desc'
,则评论按随机顺序排列,但没有错误。
答案 0 :(得分:0)
在我已经获取子列表之后,我最终完成了排序,当时我在代码中需要它们。像这样:
def sortedComments = myPicture.comments.sort{it.content}.reverse()
具有允许根据需要进行无限排序配置的优势,而不是默认情况下只检索一个。