2015-09-26 75 views
1

我開始在phoenix創建一個網絡應用程序。我查看了一些教程,並創建了chrismccord的聊天示例。當我們生成ecto模型時,他們使用控制器生成CRUD網頁,該網頁僅用於簡單目的,不適用於實時更新。我有點困惑何時使用控制器以及何時使用通道,是否只有在需要實時更新時纔會使用?菲尼克斯控制器vs頻道

還有一種方法可以將兩者一起用於特定的表單/網頁,其中某些任務在控制器上完成,某些任務在通道中完成。請澄清。

回答

1

通道用於實時通信。控制器用於正常的HTTP請求 - 響應通信。

控制器通常基於數據庫資源,因此通常會爲您生成CRUD操作。但實時用例更加多樣化。我不認爲有什麼東西可以被認爲是由發生器產生的默認實現。

你肯定可以在一個頁面內同時使用兩個通道進行實時更新和常規控制器,但是你需要自己編寫通道代碼。