我目前正在构建一个Ruby on Rails应用程序,供学生使用教师预订研讨会课程。我正在寻求关于模型设置的一些建议。
我已经看过this& this堆栈溢出线程,但它们不回答我的问题。
所需功能:
我目前的提议:
我正在考虑设置三个模型和三个表。这三个模型都连接到同一个workshop
控制器。
示例数据使用以下场景:Tom每个星期一和星期一都有班级。星期二上午9点,但仅限于下周,他将把他的星期二班级改为星期三举行。
我的想法是,我有一个列出所有教师的模型。类。我为每个老师的班级提供了另一个反复出现时间段的模型。然后我有第三个例外模型,作为一个变化列表'到每周重复课程时间:
workshop
模型链接到workshop
表:
ID | Workshop Name | Price
1 | Tom's Class | 100
workshop_times_recurring
模型链接到workshop_times_recurring
表:
ID | Workshop ID | Times
1 | 1 | {Monday 0900, Tuesday 0900}
workshop_times_other
模型链接到workshop_times_other
表:
ID | Workshop ID | Type | Time
1 | 1 | Active | {2017May31 09am}
2 | 1 | Inactive| {2017May30 09am}
我的问题是:
'Monday 0900, Tuesday 0900'
和'2017May31 09am'
等字符串,以便在javascript驱动的日期时间选择日历中正确显示信息。我目前的设置是否允许我在前端实现这一目标?答案 0 :(得分:1)
为了主要回答您的第二个问题,我建议使用既定格式重复日程安排,例如OpenStreetMap Opening Hours格式。它还有一个JavaScript library。
但是既然它也可以处理常规时间表的异常,它也可能会简化你的模型。