我有一个使用设备的用户模型和一个交易者模型。我想在用户被分配新交易者时向他们发送弹出消息或警报。
经理可以将交易者分配给用户,以便分配过程由与接收新交易者的用户不同的用户完成。
如何让经理的“分配”操作向已分配新交易者的特定用户发送提醒?他们将登录,但我不希望他们必须刷新页面
Trader_controller.rb 中的分配方法
if @trader.save
// Send alert to user if @trader.user == current_user
flash[:notice] = "Successfully created trader." // flash message for manager
redirect_to traders_path
return
else
render :new
return
end
最佳答案
您需要使用套接字将新信息推送到适当的客户端。如果您使用的是 Rails 5,则可以使用 ActionCable。您需要让用户订阅特定于他们的 channel ,然后在该 channel 上发布信息以更新用户。当然,您的前端需要知道如何处理数据。
https://guides.rubyonrails.org/action_cable_overview.html#client-server-interactions-subscriptions
如果您使用的是旧版本的 Rails,请查看这篇文章:
https://medium.freecodecamp.org/implementing-web-sockets-in-a-rails-4-fb45696f8d8c。
关于javascript - Rails - 当其他用户被分配新客户端时向他们发送警报(无需刷新其页面),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55236920/