[英]Notify user when next time user login in Laravel 5.4 Application
我正在尋找一種解決方案,以通知所有用戶應用程序中X活動的發生。
我不希望通過郵件或短信通知。 因為此特定通知將發送給所有用戶,所以可能在1000到25000個用戶之間。 發送數千封郵件或短信會浪費資源。
我想使用會引起注意的東西通知用戶,即他們會閱讀。 例如:如果X活動今天已經發生。 並且Y用戶在10天后登錄,他/她必須能夠看到通知(我想在這種情況下Flash消息不起作用)。
最好和最有效的方法是什么? 如果使用數據庫通知是我的想法。 如何創建一個通知(數據庫中的單個條目),並確保所有用戶下次登錄時都閱讀該通知? 沒有創建數千行?
我認為將通知存儲在數據庫中也是一種方法。
如果在User
模型和Notification
模型之間添加多對多關系,則在關系數據透視表上帶有is_read
標志。
然后,當用戶閱讀通知時,將is_read
標志更新為1
。 或者,如果您不需要保留該用戶的通知,則可以刪除該關系,從而減少過時記錄的存儲。
編輯
如果每個用戶總是看到每個通知,則可以將last_login_at
時間戳存儲在User
模型中,該時間戳在User
每次登錄時都會更新。
然后,每次用戶登錄時,查找自last_login_at
以來創建的所有Notification
,並將其顯示給用戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.