0
我需要單表繼承(STI)和初始化繼承模型的默認值方面的幫助。初始化Rails中繼承模型的實例方法值
例如,我有從玩家繼承的Omnivore,Herbivore和Herbivore模型,並且Player從用戶繼承。
通過STI,所有模型都有lvl,xp,hp,ap和max_xp,max_hp和max_ap。 (:用戶:XP,:整數,默認:0)
,但我想要做的是對的實例初始化值不同
通過數據庫,所有的值默認爲0或1。每班。例如,每個新的食肉動物物體都會設置LVL的值:1 XP:0/50,HP:5/5,AP:3/3,而草食動物的LVL:1 XP:0/50,HP:3/3 ,AP:5/5,草食動物LVL:1 XP:0/50,AP/HP:4/4。
另外,當xp值超過max_xp時,lvl會增加。像
when xp > max_hp
lvl += 1
end
或
xp = 70
lvl = case xp
when 0..40 then 1
when 41..60 then 2
when 61..70 then 3
when 71..100 then 4
else "Overpowered"
end
where do I put this?
怎麼可能ü接近這兩個問題?
我想這樣的事情可能會爲初始化值
def initialize
@xp = 100
end
,但沒有工作的工作,而不是設置@xp爲零。任何幫助將不勝感激!