我正在尝试为乘飞机旅行的乘客开发数据/对象模型。
用一句话来说:
we have customers who make reservations to take trips.
我很难确定是否应该有两个对象/模型:客户和旅行或三个:客户、预订和旅行。
我相信我的困惑源于这样一个事实,即随着时间的推移,预订会变成旅行。这个事实使我认为最好只有两个模型:客户和旅行。在这种情况下,Trip 将属于客户,并具有以下示例属性:customer_id、reservation_number、destination、travel_date 等。
我对这种方法的问题是预订更改并被取消,我有点不愿意在旅行日期、目的地或取消方面进行大量更改来混淆 Trip 模型。
更新:关于旅行(航班)的更多信息条件。航空公司可以取消旅行/航班,客户可以在旅行/航班时间之前取消天气和预订。
也许我缺少的是将预订转换为旅行(机票?)的第四个模型。
所以我的问题。
问题是我用首选的设计模式描述了特定类别的数据模型,如果是,那么模式和解决方案是什么。
其他比我更有经验的人如何解决这个问题。
我碰巧使用 ruby on rails / activerecord 进行开发,但这个问题适用于任何开发框架。
感谢您的输入。