2011-10-20 9 views
0

私はn + m個の属性(場所、タイミングなど)を持つInviteモデルを持っています。招待が受け入れられると、Inviteモデルからコピーされたn個の属性とそれ自身のk個の属性を持つEventオブジェクトが作成されます。私はn個の属性の重複を避けたい。Railsモデルデザイン:あるクラスから別のクラスに属性のセットをコピーします

Railsでこの関係をモデル化するにはどうすればよいですか?

ありがとうございます。

答えて

1

実際の世界でオブジェクトとそのモデル(表現)について考えないでください。また、オブジェクトのライフサイクル

  • 招待について考える何か簡単に理解できる
  • イベントが重なりがあるからといっても

に理解されているあなたはそれを排除することを意味するものではありません。

あなたが本当に欲しいのであれば、すべてのイベントbelongs_toが招待状と言えるでしょう。

ただし、これを行う前に、招待状がacceptedの状態になると変更されないようにビジネスロジックで確認してください。

を追加しましたn属性を複製するもう一つの理由は:これらの属性は、後で実際のイベントのために変更されていると仮定 - you'dは、属性がイベントモデルになりたいです。招待とイベントのデータが1セットあった場合、その属性は招待が入力された時点から固定されていると言います。

しかし、それは実際の世界とよく一致しない可能性があります。値を変更すると、招待が入力されたときの値が元々の情報が失われます。

+0

ありがとうございました。あなたのアドバイスは賢明なものだと思います。 – AdamNYC

関連する問題