【发布时间】:2017-03-21 05:30:24
【问题描述】:
我正在开发一个room booking 应用程序。我正在使用rails 5 和postgres。模型是这样的。
一个Hotelhas_manyroom_types
RoomTypes 表格将如下所示
RoomTypes
id: 1
name: "a specific room"
no_of_rooms_of_this_type: 5
酒店所有者可以将某一天标记为不可用。所以我会将每个不可用的日期保存为单独的记录。 选项 1
我认为是为每个不可用的日期创建一个单独的表格。这是最好的方法吗?如果是这样的话,我会这样安排房间
UnAvailabiltyTable
id: 1
room_id: 1
unavailable_day: Date
由于一个房间有许多相同类型的不同房间:no_of_rooms_of_this_type,每个房间都有自己的可用性,我最终将创建多个具有相同 room_id 的记录。可以吗??
选项 2(不确定效率如何)
将不可用的值存储为每个房间的 jsonb 列
有人能解释一下这个话题吗?
【问题讨论】:
-
您是否考虑过创建一个预订模型,该模型具有
belongs_to房间并具有start日期时间和stop日期时间以及它需要的任何其他信息? -
@Okomikeruko 该方法适用于预订的房间。但我正在寻找一种方法,房间所有者可以将某些日期标记为不可用
-
这些是重复日期吗?
-
不。它不会重复出现。它是一个市场应用程序。所以计划让业主选择设置不可用的日期。我打算展示一个 jquery 日历,以便他们可以选择不可用的日期。但是如何用我的后端构建这些信息是我正在努力解决的问题......
标签: sql ruby-on-rails postgresql database-design