0
我有一個叫做Event的類,它裏面有很多用戶對象。檢查一個對象是否在Groovy集合中
static hasMany = [users:User]
如何檢查給定的用戶是否在該集合中?有沒有這樣做的功能?
我以爲users.find(GivenUser)會工作,但顯然不是!
我有一個叫做Event的類,它裏面有很多用戶對象。檢查一個對象是否在Groovy集合中
static hasMany = [users:User]
如何檢查給定的用戶是否在該集合中?有沒有這樣做的功能?
我以爲users.find(GivenUser)會工作,但顯然不是!
問題是如何評估集合中對象的平等性。不知道你是否已經在你的集合中實現了你自己的equals或哈希碼,這很難說。但是,你總是可以做這樣的事情:
users.find{it.id == givenUser.id}
正如它更好地使用GORM來查詢這個,如果你有一個雙向關係的評論中指出。在這種情況下,它會更容易和高效:
User.findByOtherObject(otherObject)
如果你有一個雙向的關係,User.someParentDomain,那麼你其實可以做得更快,無需加載所有的用戶對象,與SomeParentDomain.findByUser(用戶)用於loteq的+1 – loteq
+1。 正如@loteq所述。 –
哎呀,我其實反過來說,對不起: 這是你想要的User.findBySomeParentDomain(parent) – loteq