次の例を見てください。
アプリケーションには、さまざまな種類の連絡先のドメイン クラスが含まれています。
マネージャー、ショップスチュワード、パイロット、ベースボールコーチなど
それらはすべて個別のクラスであるため、データベース内に独自の個別のテーブルがあります。
一般的な要件は、複数の電子メール アドレスを記録することです。コードの重複を避けるために、src/groovy に EmailAddress という名前の @Validatable クラスを作成します。このクラスには、もちろん emailAddress と、そのアドレスのオプションのラベルが含まれています。
これらすべての異なるドメイン クラスに複数の電子メール アドレスを記録できるようにするには、EmailAddress を拡張して関係の所有者側にリンクする新しいドメイン クラスを作成するのが最善でしょうか?
例えば
class ManagerEmailAddress extends EmailAddress {
static belongsTo = [Manager]
}
& 追加
hasMany = [emails:ManagerEmailAddress]
マネージャークラスに?それとも、所有エンティティを識別するために、多くの識別子を持つ単一の EmailAddresses テーブルを用意する方がよいでしょうか?
コメント/返信ありがとうございます。