Как мне заставить 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
звонить, чтобы сообщения никогда не были получены
... что похоже на ситуацию, которую вы описали.
Надеюсь это поможет.