我正在構建一個用戶排名系統,並且正在嘗試使用名稱分配user.rank
值。 我想在我的用戶模型來定義這樣的事情,然後可以顯示每個用戶的排名時,引用它,但是這可能不是最好的辦法:Rails爲變量分配名稱
class User < ActiveRecord::Base
RANK_NAMES = {
'Peasant' => (0..75),
'Craftsman' => (76..250),
'Vassal' => (251..750),
'Noble' => (750..1500),
'Monarch' => (1501..999999)
}
也許這將是更好的定義方法在控制器或幫手像:
if user.rank == 0..75
rank_name = "Peasant"
elsif...
但不知道該怎麼做。任何人有任何想法?我甚至不知道該怎麼稱呼我正在努力做什麼,因此很難單獨進行研究。
你的'='和'=='倒退了嗎? – nowk
是的,只是修好了。 –
我會考慮將此分解爲單獨的模型,因爲您可能希望添加/編輯/刪除排名。雖然把它放在'User'中可能看起來很有意義,但是你在'User'和本質上是'RankClassification'之間引入了緊密耦合。 –