我建立了一个小网站,收集该地区发生的一些文化活动的信息。我想扩展Event
模型,以便它可以处理 3 个不同的事件“案例场景”。
- '即单身'。具有开始日期和结束日期的正常事件。
- '即巡回演出'。相同的事件,但发生在不同的时间。
- '即博物馆'。周一至周日时间表。
我认为 1 和 2 类型的最佳方法是:
事件模型
# holds title, description, price....
has_many :dates
accepts_nested_attributes_for :dates
日期模型
# holds start_time(:datetime) and finish_time(:datetime)
belongs_to :events
我不确定如何处理第三种类型。或者更重要的是,如何以一种使未来交互更容易编码的方式构建它……比如构建一个搜索引擎。
想法:建立另一个模型,称为Timetable
?这可以举行:
boolean types -> Mon - Tue... -Sun
time type -> Mon_start - Tue_start... - Sun_start - Mon_finish - Tue_finsih... - Sun_finish.
search engine
但是,更新(具有日期字段/参数)以遍历所有这 3 种类型似乎相当复杂。
有什么想法/经验可以阐明要走的路吗?提前谢谢了!