Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Rails—在为其他用户分配新客户端时向其发送警报(不刷新其页面)_Javascript_Ruby On Rails - Fatal编程技术网

Javascript Rails—在为其他用户分配新客户端时向其发送警报(不刷新其页面)

Javascript Rails—在为其他用户分配新客户端时向其发送警报(不刷新其页面),javascript,ruby-on-rails,Javascript,Ruby On Rails,我有一个使用Desive的用户模型和一个交易者模型。我想发送一个弹出消息或提醒用户,每当他们被分配了一个新的交易者 经理可以将交易者分配给用户,因此分配过程由接收新交易者的用户以外的其他用户完成 如何使经理的“分配”操作向已分配新交易员的特定用户发送警报?他们将登录,但我不希望他们必须刷新他们的页面 在traders\u controller.rb中分配方法 if @trader.save // Send alert to user if @trader.user == current_us

我有一个使用Desive的用户模型和一个交易者模型。我想发送一个弹出消息或提醒用户,每当他们被分配了一个新的交易者

经理可以将交易者分配给用户,因此分配过程由接收新交易者的用户以外的其他用户完成

如何使经理的“分配”操作向已分配新交易员的特定用户发送警报?他们将登录,但我不希望他们必须刷新他们的页面

在traders\u 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。您需要为用户订阅特定于他们的频道,然后发布该频道上的信息以更新用户。当然,您的前端需要知道如何处理数据

如果您使用的是旧版本的Rails,请参阅本文:


.

您需要使用套接字将新信息推送到相应的客户端。如果您使用的是Rails 5,那么可以使用ActionCable。您需要为用户订阅特定于他们的频道,然后发布该频道上的信息以更新用户。当然,您的前端需要知道如何处理数据

如果您使用的是旧版本的Rails,请参阅本文:


.

什么版本的Rails?@aridlehoover我在使用Rails 5什么版本的Rails?@aridlehoover我在使用Rails 5伟大的答案。另一种方法是集成一个可以为您处理硬部件的服务。我过去使用过pusher.com,对此非常满意。您也可以通过每隔一段时间检查消息来在客户端实现轮询,但这对客户端和服务器资源都是相当浪费的,但这是一个好的quick-n-dirty解决方案,您不需要更多的基础设施来处理。回答得很好。另一种方法是集成一个可以为您处理硬部件的服务。我过去使用过pusher.com,对此非常满意。您还可以通过每隔一段时间检查消息来在客户端实现轮询,但这对客户端和服务器资源都是相当浪费的,但这是一个好的quick-n-dirty解决方案,您不需要更多的基础设施来处理。