现在我有一个名为Profile的模型,它与用户相关联(基本上在Profile中我保存了与User相关的所有信息,在User I中存储了诸如password,last_sign_in等...)。我希望能够向用户发送一些(每周)电子邮件,我想知道只是在Profile表中添加一个新列。
但是,我认为我也想每天发送,所以我正在考虑创建一个名为“Notifications”的新表,该表与Profile相关联。但是,我没有看到我应该做哪种关联。
个人资料可以包含许多通知,但许多个人资料中都有一种通知。你们会怎么做?
谢谢!
答案 0 :(得分:1)
我认为这完全取决于您要完成的工作,听起来您有通知类型以及针对配置文件的通知实例。
如果是这种情况,那么您通常会有一对多的关系,个人资料可以有很多通知;您的个人资料模型中包含has_many =>通知。每个通知都有一个类型引用;在您的通知模型中包含belongs_to =>个人资料和has_many => notification_types。这意味着notification_type属于许多通知;在您的NotificationType模型中包含belongs_to =>通知。
答案 1 :(得分:0)
我认为您不需要通知和个人资料/用户之间的任何关联。您可以创建另一个名为Notification的模型,并使用名为send_notification的类级方法。然后你可以随时发送通知。
如果您想跟踪是否发送通知。您可以拥有状态/标志列配置文件。每当您发送通知更新该列时。
这只是我的意见。