2015-02-23 39 views
0

我有一個名爲Connection的grails域。該域包含一個名爲myFriend的用戶即時消息。例如,我想編寫一個Query,返回myFriend.firstName爲Dave的所有連接。由於此對象嵌入在Connection中,因此我不知道如何查詢該對象。任何建議?我試圖使用FindAllBy和Where查詢,但沒有運氣。在搜索或FindAllBy期間在Grails中使用嵌入對象屬性

調查結果: 我想出了一個兩步驟的過程來完成這項工作,但我希望如果可能的話,讓它成爲一個過程。首先,我從Connection表中獲取所有「myFriend's id」的列表,然後使用它查詢User表並在firstName上篩選。然後使用inList從Connection表中獲取其名稱以某個字母開頭的所有用戶。

回答

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 
}