0

共通のプロパティを持つ 4 つのドメイン クラスがtransID, createdDateあり、テーブルの主キーとしてtransID入力intおよびマップされます。抽象化のルールにより、共通のプロパティ/属性を抽象クラスに分離してから、子クラス (私の場合、私が持っている 4 つのドメイン クラス) にそれらまたはextendsそれを継承させます。

私の抽象クラスには 2 つのプロパティtransID, createdDateが含まれていますがtransID、4 つの子クラスの主キーに設定されているため、抽象クラス内でこのマッピングをフォーマットしました。

static mapping = {
  id generator: 'increment',
     name: 'transID',
     column: 'transID',
     type: int
}

プロジェクトの実行にエラーはありませんが、dbconsole でテーブルを確認すると、4 つのドメイン クラスに関連する 4 つのテーブルが表示されませんが、最初の子のプロパティを持つ抽象クラスしか表示されません。

上記のドメイン クラスの ID を抽象化する方法はありますか、それとも抽象クラスではなく子クラスにマップする必要があります。

ありがとう。

4

1 に答える 1

1

デフォルトでは、GORM はクラス階層ごとにテーブルを使用するため、テーブルは 1 つだけになります。サブクラスごとに 1 つのテーブルが必要な場合は、GORM DSL を使用してそのように構成できます - gorm の継承を参照してください。

ただし、サブクラスごとのテーブルを過度に使用する前に注意してください。

于 2012-06-21T08:52:35.333 に答える