Grails 调用addTo或removeFrom时对hasMany或callback的约束
当一个对象被添加到一个Grails 调用addTo或removeFrom时对hasMany或callback的约束,grails,gorm,Grails,Gorm,当一个对象被添加到一个hasMany-关系(比如调用addTo或removeFrom)中时,有没有其他通用的方法来接收回调?不幸的是,在添加或删除对象时,不会调用beforeValidate,或者在删除或添加对象时,至少属性hasmanysys不是脏的。如果从ABC添加或删除对象,我需要执行一些操作 class ABC { List hasManyXYs static hasMany = [hasManyXYs: XY] } 我试图在列表中添加一个约束: class ABC {
hasMany
-关系(比如调用addTo
或removeFrom
)中时,有没有其他通用的方法来接收回调?不幸的是,在添加或删除对象时,不会调用beforeValidate
,或者在删除或添加对象时,至少属性hasmanysys
不是脏的。如果从ABC
添加或删除对象,我需要执行一些操作
class ABC {
List hasManyXYs
static hasMany = [hasManyXYs: XY]
}
我试图在列表中添加一个约束:
class ABC {
List hasManyXYs
static hasMany = [hasManyXYs: XY]
static constraints = {
hasManyXYs(validator: {
true
}
}
}
但至少在grails版本2.0.5中,服务器没有启动,并出现如下错误:
No such property: hasManyXYs for class: XY
Possible solutions: hasManyXYs. Stacktrace follows:
“没有这样的属性:类:XY的hasmanyxy”。看起来您在某处有代码试图引用
XY
实例上的hasmanysys
属性,该属性未在说明中显示。“当调用addTo或removeFrom时,是否有其他接收消息的通用方法?”我不理解这个问题,也不清楚这与约束有什么关系。谢谢您的反馈。我更新了这个问题,也许现在更清楚了?“没有这样的属性:hasmanyxy代表类:XY”。您是否有代码试图引用XY
类上的hasmanyxy
属性?这就是错误信息所暗示的。我不知道你的XY
类看起来像什么,但它大概没有名为hasmanyxy
的属性。看看这个类ABC
,从问题中,列表显示在那里。正如我在上面说过的几次,错误消息表明,在XY
的实例或XY
类本身的某个地方可能有引用hasmanyxy
属性的代码。是这样吗?这就是错误消息所暗示的。