我使用FAYE無需刷新頁面就可以廣播聊天消息,並且如果硬編碼通道,它就可以工作。但我想在一個變量傳遞從我的消息控制器,並使用它作爲頻道播出,這樣我可以有2人將導軌變量轉換爲js erb
在應用程序/視圖/消息/ create.js.erb之間的私人聊天
<% broadcast @channel do %>
$("#chat").append("<%= escape_javascript render(@message) %>");
<% end %>
$("#new_message")[0].reset();
如果我將@channel更改爲「/ messages」,它將正常工作,並且我的消息將在郵件存儲在數據庫中後立即顯示在當前正在查看「/ messages」頻道的所有人的屏幕上。
在我的消息控制器I有
def private
...
@channel = "/"[email protected]_s+"chatwith"+ @id2.to_s
...
end
這使得讓每兩個人聊了,只有他們有機會獲得一個獨特的渠道。其他用戶不允許進入該頁面,也無法訪問該通道,這是控制器中其他代碼完成的功能。
我只需要在每次發送消息時在create.js.erb中訪問@channel,這樣它就會被廣播到該特定聊天的正確專用通道。
我該怎麼做?
不是這種情況。該方法可能被稱爲「私人」,但這並不意味着它是一種私人方法。 – user2943464