刚开始了解createCriteria()方法的功能。只是想知道除了在Controller上应用它之外,还有一种方法可以应用到域类吗?可能是它自己映射到一个属性,如:
static mapping = {
additionalInfo: Page.createCriteria().list()
}
答案 0 :(得分:0)
只是想知道除了在控制器上应用它之外,是 还有一种方法可以应用于域类吗?
条件查询不仅限于控制器,您可以使用与控制器中相同的语法将它们应用于其他位置。但是,您在此处显示的特定示例可能会出现问题,因为您尝试在用于配置GORM的mapping
块内部使用GORM。
答案 1 :(得分:0)
也许您可能只想根据目标字段创建一个新的字段,如下例所示:
class myInfo {
String additionalInfo
String[] moreInfo // a transient field
getMoreInfo(){
def myresultmap = createCriteria.list{
// insert any other criteria shenanigans
}
return myresultmap
}
static transients = ['moreInfo']
}
在控制器中,使用MyInfo类的Domain实例返回正常视图 然后在视图中使用:
<g:each in="${domaininstancefromcontroller}">
${it.moreInfo[0]
</g:each>
见docs。 希望这会有所帮助。