gpt4 book ai didi

grails - Grails 域中的 transient 属性

转载 作者:行者123 更新时间:2023-12-04 15:26:56 24 4
gpt4 key购买 nike

我有一个名为 People 的 Grails 域,我想检查每个 People 是否有 child 。 Childs 是其他 People 对象。这是我的域结构:

class People implements Serializable {

static constraints = {
name (nullable : false, unique : true)
createdBy (nullable : false)
creationDate (nullable : false)
}

static transients = ['hasChild']

static mapping = {
table 'PEOPLE'
id generator: 'sequence', params : [sequence : 'SEQ_PK_ID']
columns {
id column : 'APEOPLE_ID'
parentPeople column : 'PARENT_PEOPLE_ID'
}
parentPeople lazy : false
}

People parentPeople
String name
String description

Boolean hasChild() {
def childPeoples = People.createCriteria().count {
eq ('parentPeople', People)
}
return (childPeoples > 0)
}
}

但我不能在任何地方调用 people.hasChild()。你能帮我解决这个问题吗?非常感谢!

最佳答案

这是因为在 eq ('parentPeople', People) ,Grails 无法理解“人”是什么(它是一个类)。你应该用 this 替换“人” .例如:

static transients = ["children"]

def getChildren() {
def childPeoples = People.findAllByParentPeople(this, [sort:'id',order:'asc'])
}

关于grails - Grails 域中的 transient 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5388645/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com