Ruby on rails Rails模型设计:将一组属性从一个类复制到另一个类
我有一个Invite模型,它有n+m个属性(位置、时间等)。接受invite后,将创建一个事件对象,其中包含从invite模型复制的n个属性及其自身的k个属性。我希望避免n个属性的重复 我应该如何在Rails中为这种关系建模Ruby on rails Rails模型设计:将一组属性从一个类复制到另一个类,ruby-on-rails,class,model,Ruby On Rails,Class,Model,我有一个Invite模型,它有n+m个属性(位置、时间等)。接受invite后,将创建一个事件对象,其中包含从invite模型复制的n个属性及其自身的k个属性。我希望避免n个属性的重复 我应该如何在Rails中为这种关系建模 谢谢。不要考虑属性,要考虑对象以及它们在现实世界中的模型(表示)。还要考虑对象的生命周期 邀请很容易理解 事件也是可以理解的 仅仅因为有重叠并不意味着你想消除它 如果你真的愿意,你可以说每一个活动都属于一个邀请。(并且n属性仅存储在所属模型中。) 但在执行此操作之前,请
谢谢。不要考虑属性,要考虑对象以及它们在现实世界中的模型(表示)。还要考虑对象的生命周期
- 邀请很容易理解
- 事件也是可以理解的
n
属性仅存储在所属模型中。)
但在执行此操作之前,请使用业务逻辑确保一旦邀请达到accepted
状态,就不会更改邀请
添加了复制n
属性的另一个原因:假设这些属性稍后针对实际事件进行了更改——您希望这些属性位于事件模型中。如果您有一组用于邀请和事件的数据,那么您会说这些属性从输入邀请时起就已固定
但这很可能与现实世界不符。如果您确实更改了这些值,那么您将丢失输入邀请时原始值的信息。谢谢Larry。我认为你的建议是明智的。