Как мне заставить Private_Pub работать с Rails 4?

Я пытаюсь понять, как заставить private_pub работать с Rails 4, используя альтернативный синтаксис Readme. Это не работает для меня.

Я создал совершенно новое приложение 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)

Я запустил фэй сервер с

Rackup private_pub.ru -s тонкий -Е производство

Я запустил сервер rails, затем зашел на корневую страницу ("home#index"), и ничего не происходит. Фэй сервер показывает, что ничего не происходит. Исходя из моего понимания, я "должен" получить окно с предупреждением, когда я посещаю home#index, но ничего не происходит, и я не могу понять, почему.

Есть идеи? Благодарю.

1 ответ

Возможно, вы уже решили эту проблему, но я решил, что буду вмешиваться, поскольку натолкнулся на ваш вопрос, пытаясь решить ту же проблему.

Кажется, вам все еще нужно <%= subscribe_to '/messages/new' %> в вашем index.html.erb или wahtever представлении перед вызовом PrivatePub.subscribe [...] в вашем CoffeeScript

Райан Бейтс в этом старом отладочном билете, похоже, подразумевает, что это так; он предлагает обработку ошибок в случае:

с помощью PrivatePub.subscribe без subscribe_to звонить, чтобы сообщения никогда не были получены

... что похоже на ситуацию, которую вы описали.

Надеюсь это поможет.

Другие вопросы по тегам