有没有办法将Grails findAll用于复杂对象的toString?
我有一个名为Person的对象(示例)。
Person具有firstName和lastName属性,并且有一个toString方法返回" FirstName:" + firstName +" LastName:" + lastName
还有另一个对象,其中Person名为Group。 组具有Person的属性。
我想搜索:
Group.findAll{
ilike("person.toString", "%FirstName%")
}
我得到以下内容:
could not resolve property: person.toString of: com.test.Group. Stacktrace follows:
Message: could not resolve property: person.toString of: com.test.Group
Line | Method
->> 670 | doCall in grails.gorm.DetachedCriteria$_list_closure2
有没有办法使用findAll与toString方法进行比较?我无法创建getFirstAndLastName,因为该对象是另一个项目的插件,无法修改。
答案 0 :(得分:1)
有没有办法使用findAll与toString方法进行比较?
没有。在实体上调用toString
或任何其他方法的唯一方法是检索它们,将它们带入应用程序,以便可以创建实例然后调用这些方法。如果toString
碰巧返回了你可以模拟的东西,而没有实际调用该方法,那么你可能有选项,但问题的答案是“否”。
我希望有所帮助。