grails - Gorm嵌套查询包含任何

标签 grails gorm

我有一个域名类(class)

Post {
hasMany [comments : Comment]
}

Comment {
 belongsTo [post: Post]
 User user
}

我想搜索所有包含来自特定用户的任何评论的帖子。

就像是
        def posts = Post.findAll
        {(
            //condition1 ||
            // condition 2 ||
            comments.containsAny(Comment.findByUser(User.get(params.userId)))
//if the post contains any comment from this user, get it
        )}

知道我该怎么做吗?

谢谢

最佳答案

此条件查询应执行此操作

def user = User.get(params.userId)

def posts = Post.createCriteria().listDistinct {

  comments {
    eq 'user', user
  }
}
listDistinct可确保如果用户对某个帖子发表几次评论,则该帖子只会被检索一次。

关于grails - Gorm嵌套查询包含任何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23015688/

相关文章:

tomcat - openStream 下载文件需要很长时间

logging - 集成测试期间的 Grails 日志记录

java - 无法找到对象标识 'org.springframework.security.acls.domain.ObjectIdentityImpl 的 ACL 信息

grails - 无法解决依赖关系:资源:1.2.14

grails - 如何在Grails 2中创建/使用共享域的属性/方法?

grails - 具有相同域类和级联保存的HasOne和HasMany

grails - 了解SpringSecurity ACL中的createacl?

grails - 展平嵌套的Grails Domain对象

grails - 基于嵌入式日期字段的Grais列表不起作用

hibernate - Grails GORM查询以匹配多个关联对象