2016-11-29 46 views
2
class NoteChannel < ApplicationCable::Channel 

    def save_note(data) 
    note = current_user.notes.find(data[:id]) 
    note.content = data[:content] 
    note.save! 
    end 

end 

收到消息並正確填充數據參數。但是,對note的更改不會保留在數據庫中。我誤解ActionCable嗎?如何使用Rail的ActionCable訪問ActiveRecord模型?

我無法通過ActionCable訪問存儲在MySQL數據庫中的ActiveRecord模型嗎?

回答

1

好吧,原來的代碼一般很好。我在本地使用Puma作爲Web服務器,並且不會在控制檯中顯示錯誤消息,如rails s會。

相反,我不得不尾部的發展日誌,看看錯誤: tail -f log/development.log

事實證明,在這種情況下,錯誤是404,我應該已經訪問散列鍵作爲一個字符串,而不是一個符號:

note = current_user.notes.find(data["id"]) 
相關問題