我期待允许我的用户配置他们的电子邮件通知频率。
我想为他们提供典型的选择:直接电子邮件、每日和每周摘要
¿ 在 rails 3 应用程序中构建它的最佳策略是什么?
谢谢大家!
我期待允许我的用户配置他们的电子邮件通知频率。
我想为他们提供典型的选择:直接电子邮件、每日和每周摘要
¿ 在 rails 3 应用程序中构建它的最佳策略是什么?
谢谢大家!
你可以email_frequency_preference
在你的表上有一个字符串列users
来存储他们的偏好。然后您可以通过他们的电子邮件频率偏好找到用户:
User.find_all_by_email_frequency_preference # :instantly | :weekly | :monthly
我还建议使用Event
带有名称和描述的模型来表示您想要通知用户的可能发生的事件。然后您可以按创建日期查找事件:
Event.find :created_at => start_date..Date.today
现在,您必须分别处理所有三个频率偏好:
每当事件发生时,找到所有喜欢即时事件电子邮件通知的用户并立即将其发送给他们。
在每周结束时,查找该周发生的所有事件:
start_date = Date.today.beginning_of_week
将他们的描述合并到一封电子邮件中,然后找到所有喜欢每周事件电子邮件通知的用户并将其发送给他们。
在每个月的月底,找出当月发生的所有事件:
start_date = Date.today.beginning_of_month
将他们的描述合并到一封电子邮件中,然后找到所有喜欢每月事件电子邮件通知的用户并将其发送给他们。