Например, в https://www.youtube.com/watch?v=n0WUjGkDFS0 в 10:36 он упоминает возможность создания нескольких каналов, но как на самом деле это сделать?
В соответствии с Rails 5 ActionCable устанавливает поток из параметров URL переменная может быть определен и передан как параметр, например:
def subscribed
stream_from "room_channel_#{params[:roomId]}"
end
Но в файле javascript перед передачей данных сюда, как передать данные со страницы? В следующем примере отображается ошибка, поскольку предположительно кабель определен до загрузки документа.
App.room = App.cable.subscriptions.create { channel: "RoomChannel", roomId: document.getElementById("message_text").getAttribute("data-room")}
Затем, если кто-то успешно получает данные из документа в переменную здесь и передает их методу stream_from, то, наконец, как правильный канал передается в метод выполнения для использования в широковещательном задании?
def perform(message)
ActionCable.server.broadcast 'room_channel_???', message: render_message(message) #, roomId: roomId
end
Спасибо!