Ruby on rails 使用通道推送卷筒导轨
我试图在ROR应用程序中使用websocket rails gem的推送机制 我基本上完成了以下工作 my application.jsRuby on rails 使用通道推送卷筒导轨,ruby-on-rails,gem,websocket,push,Ruby On Rails,Gem,Websocket,Push,我试图在ROR应用程序中使用websocket rails gem的推送机制 我基本上完成了以下工作 my application.js //= require jquery //= require jquery_ujs //= require websocket_rails/main $(function(){ // connect to server like normal var dispatcher = new WebSocketRails('localhost:3000/w
//= require jquery
//= require jquery_ujs
//= require websocket_rails/main
$(function(){
// connect to server like normal
var dispatcher = new WebSocketRails('localhost:3000/websocket');
// subscribe to the channel
var channel = dispatcher.subscribe('products');
// bind to a channel event
channel.bind('new', function(data) {
console.log('channel event received: ' + data);
});
});
然后我在3000端口启动了瘦服务器
然后我从rails控制台输入以下命令
WebsocketRails[:products].trigger(:new, Product.last)
但浏览器控制台中没有打印任何内容
我是否错过了一些设置配置
谢谢我也遇到了这个。报告说: 从Rails应用程序中的任何位置向频道广播。现有控制器、模型、后台作业或新的WebsocketRails控制器 i、 没有提到控制台
根据我的经验,它的工作原理与控制器所描述的完全相同。我知道这个问题已经很老了,但是项目有一些更新,所以对于将来来到这里的每个人来说,现在使用实例间事件可以从任何地方触发,甚至从rails控制台 将其添加到您的
config/initializers/websocket\u rails.rb
WebsocketRails.setup do |config|
config.synchronize = true
end
这是真的,我也有同样的问题,当我把代码放在控制器中时,它工作得很好。我不能在模型上使用它吗?