設定:
3 つのドメイン クラス A、B、C。A と B はプラグイン内にあります。C は、このプラグインに依存するアプリケーションにあります。
class A{
B b
static mapping = {
b fetch: 'join'
}
...
}
class C extends A{
String name
...
}
C.list().each{
println it.b.name
}
問題:
ドキュメント ( http://www.grails.org/doc/1.3.x/ref/Database%20Mapping/fetch.html ) で説明されているように、fetch: "join" は、hibernate が println 行ごとに 1 つのクエリのみを使用するように強制する必要があります。残念ながら、結合のない選択クエリが 2 つあります。
私の調査
新しい Grails プロジェクトを作成しましたが、ドキュメントに記載されているとおりに動作しますが、クラス A は外部プラグインにありません。
質問
上記の例で fetch: "join" が無視される理由は何か分かりますか?