1

我试图了解如何使用自述文件的替代用法语法让 private_pub 与 Rails 4 一起使用。它不适合我。

我使用单个控制器和索引操作(设置为根路由)创建了一个全新的 Rails 4 应用程序。

home_controller.rb

class HomeController < ApplicationController
  def index
    PrivatePub.publish_to "/messages/new", :chat_message => "Hello, world!"
  end
end

home.js.coffee

PrivatePub.subscribe "/messages/new", (data, channel) ->
  alert(data.chat_message)

我启动了faye服务器

rackup private_pub.ru -s thin -E production

我启动了 Rails 服务器,然后转到根页面(“home#index”),但什么也没发生。faye 服务器显示没有任何事情发生。根据我的理解,当我访问 home#index 时,我“应该”会弹出一个警告框,但什么也没发生,我不知道为什么。

有任何想法吗?谢谢。

4

1 回答 1

0

你可能已经解决了这个问题,但我想我会插话,因为我在尝试解决同样的问题时遇到了你的问题。

在调用CoffeeScript 之前,您似乎仍然需要<%= subscribe_to '/messages/new' %>在 index.html.erb 或 wahtever 视图中PrivatePub.subscribe [...]

Ryan Bates 在这张旧的调试票中似乎暗示了这种情况;他建议对以下情况进行错误处理:

PrivatePub.subscribe不打电话就使用,subscribe_to所以永远不会收到消息

...这听起来像你描述的情况。

希望这可以帮助。

于 2013-10-07T21:37:31.013 回答