将同一模型对象与不同的订单/日期时间多次关联

时间:2016-03-13 22:26:06

标签: ruby oop ruby-on-rails-4 model

有Smil模型,播放列表模型和视频模型。 smil有很多播放列表,播放列表有很多视频。创建播放列表后,我希望可以将相同的播放列表添加到smil,但使用与播放列表关联的不同日期时间。如果我将datetime属性添加到播放列表,它将使每次使用该播放列表时,它将具有该日期时间。为了进一步说明,有一个播放列表1和播放列表2。我希望smil文件包含playlist1 @ datetime1,playlist2 @ datetime2,playlist1 @ datetime3,playlist2 @ datetime4。我应该如何设置/修改播放列表模型或Smil模型?

1 个答案:

答案 0 :(得分:1)

您创建另一个包含播放列表和日期时间的模型。它将所有调用委托给除日期时间之外的基础播放列表实例。

更一般地说,这被称为代理对象。它的API应该与它所代理的对象的公共API匹配(在这种情况下是一个播放列表),并且它包含一个代理对象的实例,它将所有方法调用推迟到它自己实现的。