Информация о потоке канала без подписки в actioncable

#ruby-on-rails #websocket #actioncable #unsubscribe

#ruby-on-rails #websocket #actioncable #отписаться

Вопрос:

Реализация канала ActionCable в rails.

 def subscribed

  room = Room.find_by_id(params[:room_id])
  stream_for room
end

def unsubscribed
  room_id = room.try(:id) || params[:room_id] 
end
  

Можем ли мы получить room_id или room (ActiveRecord obj) информацию в методе без подписки?

Комментарии:

1. попробуйте установить @room_id=params[:room_id] в subscribed, и вы сможете использовать @room_id в unsubscribed

2. @F.E.A. спасибо, это работает

Ответ №1:

Используя переменную экземпляра (@) в subscribed методе, мы можем получить тот же объект в unsubscribed методе

 def subscribed
  @room = Room.find_by_id(params[:room_id])
  stream_for @room
end

def unsubscribed
  puts "room => #{@room}" # Here we will get the same room object
end