2017-02-14 113 views
1

我的Rails應用程序可以撥打電話。我想要一組定義如何進行呼叫的常量。當一個通話開始時,三種情況之一可能會發生,具體取決於配置常量。他們是相當於C++枚舉的Ruby/Rails

1)要求用戶按下一鍵啓動對話

2)要求用戶說繼續展開對話

3)立即開始交談時,電話接通後

操作模式是互斥的。如果你按一個鍵開始對話,你不能說繼續開始對話等等。在C++中,這將是一個枚舉。什麼是首選的ruby/rails方式來做到這一點。一個示例顯示如何構造常量以及如何在代碼中使用它,這將不勝感激。

+2

這聽起來像你需要一個狀態機,並有許多寶石是做到這一點。 – tadman

+0

我不知道狀態機存在,謝謝@tadman。我將調查。 – RamJet

回答

1

對於Rails的枚舉,我建議Rails Enums;)

+0

這些只能與活動記錄一起使用 - 正確。我的例子沒有使用活動記錄。 – RamJet

+3

如果你將東西標記爲Rails,那麼很自然的人會指出ActiveRecord的功能。對於通用的Ruby解決方案,如果需要,最好省略Rails標籤。 – tadman

+0

夠公平 - 我會記住這一點 – RamJet