У меня возникла проблема при использовании Private Pub в проекте Rails 3. Все примеры показывают использование публикации/подписки на такой маршрут: "/ messages/new" Но что, если предполагаемый маршрут немного сложнее, т.е.Как использовать частный паб с ресурсным маршрутом, который имеет сегментный ключ?
routes.rb
resources :messages, only: [] do
post 'chat', on: :member
end
Который создаст следующую
chat_message POST /messages/:id/chat(.:format) messages#chat
Поэтому я использую это так:
вид:
= Subscribe_to "/ сообщения/# {@ чид}/чат" вид отклика
кофе:
<% publish_to "/messages/#{current_user.convos.first.id}/chat" do %>
$('#message-display').append("<%= j render partial: 'shared/single_message', locals: { user: current_user } %>")
<% end %>
Но блок никогда не будет срабатывает! Это должен быть тот же маршрут, не так ли? Я имею в виду, что сегментный ключ соответствует ... Он вообще не работает ни в каких представлениях, код внутри блока никогда не будет достигнут. Что я делаю не так?
Пожалуйста, помогите!
Jose.
Примечание. Все примеры, которые я видел, демонстрируют использование этого драгоценного камня для общего чата. Мое намерение состоит в том, чтобы создавать различные каналы для различных личных бесед между людьми (например, в чате Facebook)
Мне удалось обойти эту проблему, используя вместо нее представление js.erb. Что привело меня к мысли, что проблема заключается в том, как CoffeeScript обрабатывает блоки рубина. может ли просмотр .js.coffee даже сделать это? – jlstr
CoffeeScript не обрабатывает блоки рубина. Это ** ruby ** блоки. И вы не можете связать расширение в папке 'views /'. – Ven
Итак, в основном единственный способ сделать это, чтобы сделать то, что я сделал? – jlstr