Laravel互动通知

时间:2016-03-02 20:08:36

标签: laravel pusher

我正在试图找出一个互动通知系统。我的应用程序是用Laravel构建的,我目前使用Pusher向客户端广播某些事件。我将使用与通知系统相同的过程,但是,当为用户弹出通知时,我想要一些样式,除非用户点击或悬停在通知上,否则它将保留。

我知道我可以使用Javascript执行此操作,但如果用户不对该通知执行操作,注销,然后重新登录,该怎么办?我希望该样式保持不变,直到用户与该通知进行交互为止。< / p>

最好是创建通知控制器,每当用户与该通知进行交互时,都会针对该特定用户更新数据库记录?这似乎很多,因为通知将公开并向几乎所有用户广播......并为每个用户创建一个数据库记录......这可能会创建一个TON记录。

感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

不确定这是否是最佳方式,但我会设置:

  1. 通知模型
  2. 与用户的关系。 (用户 - 通知 - 多对多)
  3. 保持通知的中间表&amp;用户关系。
  4. 通知模型可以包含以下数据库字段来保存通知数据。

    • ID
    • 标题
    • 消息
    • 状态

    ,您的中间表可以有(notification_user表)

    • notification_id
    • USER_ID
    • read_on(timestamp)
    • is_archived(boolen)

    当用户阅读通知时,您可以更新read_on时间戳,这样您就不会一直显示它们。您还可以为他们提供归档等选项,这些选项应位于您的数据透视表中。

    希望这会有所帮助。