在Search或FindAllBy中使用Grails中的嵌入对象属性

时间:2015-02-23 04:10:07

标签: jquery gorm grails-2.0 hibernate-criteria

我有一个名为Connection的Grails域。该域包含名为myFriend的用户即时消息。我想编写一个Query,返回myFriend.firstName为Dave的所有连接。由于此对象嵌入在Connection中,我不知道如何查询。有什么建议吗?我尝试使用FindAllBy和Where查询,但没有运气。

调查结果: 我想出了两个步骤来完成这项工作,但我希望尽可能让它成为一个过程。首先,我从Connection表中获取所有“myFriend的id”的列表,然后我使用它来查询User表并过滤firstName。然后使用inList从Connection表中获取其名称以某个字母开头的所有用户。

1 个答案:

答案 0 :(得分:0)

我终于找到了基于这篇文章的解决方案:How to create criteria in groovy/grails for nested object?

  

在我的服务中

def criteria = Connection.createCriteria(); 
def results = criteria.list { 
                myConnection {                          
                    like("firstName", "${queryText}%")                          
                    } 
                }; 
return results;
  

我的域名

class User {
    String firstName
}

class Connection {
    User myConnection
}