Grails: разница между Author.withTransaction {} и Book.withTransaction {}, если в этой транзакции должны быть сохранены как Author, так и Book. - PullRequest
0 голосов
/ 02 мая 2019

Grails версии 3.2.9

Документация Grails для withTransaction не говорит много, в чем разница между, скажем, Author.withTransaction и Book.withTransaction в случае, когдаЯ хочу сохранить оба экземпляра домена Author и Book в этой транзакции, как показано ниже:

Author author = Author.get(1)
Book book = Book.findByAuthor(author)

Author.withTransaction { // what if we use Book here instead of Author
    author.age = 39
    book.price = 45

    author.save(failOnError: true)
    book.save(failOnError: true)
}

Не нашел другой документации, объясняющей разницу.

1 Ответ

2 голосов
/ 02 мая 2019

Нет разницы, они оба делают одно и то же.Каждый класс домена украшен withTransaction, который является одним и тем же транснациональным кодом.Вы можете использовать Foo.withTransaction и даже не делать ничего, связанного с Foo, и это не имеет значения.

...