Grails hasMany: когда дочерний объект обновляется, изменяется версия родителя - PullRequest
3 голосов
/ 13 сентября 2010

Я использую Grails и весьма удивлен тем, как работают hasMany отношения.У меня типичные отношения hasMany, когда родительский идентификатор находится в дочерней таблице.Когда я вставляю дочерний элемент и пытаюсь сохранить его через родительский объект, идентификатор версии родительского объекта увеличивается.У меня вопрос: почему идентификатор родительской версии должен меняться, когда есть изменения только в дочернем объекте?

class Parent { 
    static hasMany = [children: child]
}

class child {
    string name 
    Parent parent
    static belongsTo = [Parent]
}

def p = Parent.get(1)
p.addToChildren(new Child(name: "Roy"))
p.save()

Версия p увеличивается с 0 до 1. Могу ли я как-нибудьизбежать этого в Grails?

Из-за изменения идентификатора версии родителя я получаю исключение устаревшего объекта.Любая помощь?

1 Ответ

0 голосов
/ 13 сентября 2010

Одна возможность - отключить оптимистическую блокировку для вашего доменного объекта.

Обновить

или попробовать для поиска .

...