相关疑难解决方法(0)

Rails 5 ActionCable从URL参数建立流

我对Rails几乎全新,或者我相信我会知道如何自己回答这个问题.我只是想修改基本的ActionCable演示中创建的基本聊天应用程序:https://medium.com/@dhh/rails-5-action-cable-demo-8bba4ccfc55e#.6lmd6tfi7

我没有只有一个聊天室,而是想拥有多个聊天室,所以我routes.rb通过添加以下行来修改我:

get '/rooms/show/:topic', to: 'rooms#show'

所以现在我可以根据不同的主题访问不同的聊天室.房间控制器/app/controllers/rooms_controller.rb处理这些路线没有问题:

class RoomsController < ApplicationController
  def show
    @topic = params[:topic]
    @messages = Message.all
  end
end
Run Code Online (Sandbox Code Playgroud)

但是这个参数没有传递给app/channels/room_channel.rb我,我只是不确定我需要做什么修改.我目前的尝试:

class RoomChannel < ApplicationCable::Channel
  def subscribed
    stream_from "room_channel_#{params[:topic]}"
  end
Run Code Online (Sandbox Code Playgroud)

只返回"room_channel_"

ruby-on-rails

5
推荐指数
1
解决办法
3575
查看次数

ActionCable:如何使用动态渠道

我与Rails 5和ActionCable建立了一个简单的聊天,我有一个简单的"聊天"频道.

如何使频道订阅和消息广播动态化,以便创建聊天频道并将消息发送到正确的频道?

遗憾的是,我找不到一个代码示例.

更新

以下答案是正确的.我也发现它现在在导轨指南中提到过.在http://edgeguides.rubyonrails.org/action_cable_overview.html#client-server-interactions-subscriptions之前不要认为它在那里

ruby-on-rails-5 actioncable

3
推荐指数
1
解决办法
3053
查看次数