Есть ли способ игнорировать отношения hasMany при использовании Dynami c Finders? - PullRequest
0 голосов
/ 30 января 2020
class Author {
    static hasMany = [books: Book]
    String name
}

class Book {
    static hasMany = [chapters: Chapter]
    String title
}

class Chapter {
     String chapter
}

Если я пытаюсь найти всех авторов Author.findAll(), есть ли способ игнорировать отношения глав, которые также вводятся в память?

1 Ответ

1 голос
/ 30 января 2020

f Я пытаюсь найти всех авторов Author.findAll (), есть ли способ игнорировать отношения глав, которые также вводятся в память?

Да. Вот что будет по умолчанию. С классами домена, созданными точно так, как вы показали, Author.findAll() сгенерирует SQL следующим образом (точный синтаксис может отличаться в зависимости от того, какой диалект вы используете, это то, что будет сгенерировано для H2):

select author0_.id as id1_0_, author0_.version as version2_0_, author0_.name as name3_0_ from author author0_

Если вы начнете взаимодействовать с экземплярами Author и ссылаться на свойство books, и это приведет к отправке большего количества sql в базу данных.

Надеюсь, это поможет.

...