如何通过增加关系来避免增加版本?

时间:2011-05-19 08:58:24

标签: grails

我有以下域类架构:

class A { static hasMany=[abRelations: AB] }
class B { static hasMany=[abRelations: AB] }
//relation table
class AB{
 A a
 B b
 String someAttribute
}

在某些情况下,我肯定需要abRelations关联,例如hql查询,标准,......

我的问题是当我用

创建一个新的AB条目时
new AB(a: a, b: b, someAttribute: "hello").save()

A和B的版本字段增加。我可以通过添加特殊的映射选项或类似的东西来避免这种情况吗?我在某些类中使用了afterUpate事件,并且在添加新关系时也会触发此事件 - >这是我的主要问题!

2 个答案:

答案 0 :(得分:0)

您可以通过将以下内容添加到域类

来完全删除版本字段
static mapping = {
  version false
}

我的理解是,无法对version字段增加的时间进行细粒度控制。您有一个version字段,每次更新域对象时它都会自动增加,或者您根本没有它。

答案 1 :(得分:0)

如果您不想增加A和B版本,请保持关系单向,因此A和B不了解AB关系。