2
在我的模型示例遊戲中,有一個狀態欄。但我通常使用符號來設置狀態。例如在Rails模型中;符號保存到數據庫時會自動轉換爲YAML。什麼是正確的方法?
self.status = :active
MATCH_STATUS = {
:betting_on => "Betting is on",
:home_team_won => "Home team has won",
:visiting_team_won => "Visiting team has one",
:game_tie => "Game is tied"
}.freeze
def viewable_status
MATCH_STATUS[self.status]
end
我使用上述地圖可見狀態,反之亦然之間切換。
但是,當數據被保存到數據庫時,ActiveRecord將「---」附加到每個狀態。所以當我回到狀態是擰緊。
什麼應該是正確的方法?
這個工作。謝謝 – Ram 2010-05-12 09:10:23
爲什麼這不是符號的默認值? – Ram 2010-05-12 09:11:24
我的猜測是因爲如果它們被序列化爲字符串,那麼在反序列化中將無法告訴反序列化的東西 - 一個字符串或一個符號。 – 2010-05-12 09:27:20