如何在Rails中建模计划?

时间:2010-09-17 23:24:10

标签: ruby-on-rails database-design model

使用Ruby on Rails 2.3.8,我想知道如何表示处理“提醒”的模型的时间表。

Examples of reminder:
"Must do ABC", Remind me in 3 days
"Must do DEF", Remind me in 5 weeks
"Must do XYZ", Remind me on 2nd Oct 2010 at 5 pm

因此,Must do...会进入description列。

但是如何处理when to remind可以有不同类型值的事实呢?
我想到的一些事情:

  1. 我在考虑为每种类型创建一个列    (remind_in_days,remind_in_weeks,remind_at)    
    - >但这感觉有点笨拙。

  2. 有一个名为remind_type的字段,用于确定存储在名为remind_type_value的字段中的值的类型
    - >如果我使用这种方法,是否有一种方法可以简单地在Rails代码中说出类似Reminder.RemindValue的内容,而不必使用像if remind_type==x then x这样的代码?

  3. 关于我应该如何进行的任何想法(以一种可能优雅的方式)?

1 个答案:

答案 0 :(得分:1)

为什么不从现在开始节约硬编码时间? “在两周内提醒我”保存时可以执行reminder.remind_at = 2.weeks.from_now之类的操作。