1
在我的控制,我有这样的:Rails的变量不工作
user.save
if user.leveled_up==true
flash[:notice]="HOOOORAY!!!"
end
,并在我的模型,我有:
before_save :check_xp
# ....
def leveled_up=(leveled_up)
@leveled_up=leveled_up
if @leveled_up==true
self.statpoints+=5
hp=max_hp
end
end
def leveled_up
@leveled_up
end
private
def check_xp
leveled_up=false
case self.xp
when 0..999
self.level=1
when 1000..2999
leveled_up=true if self.level==1
self.level=2
when 3000..4999
leveled_up=true if self.level==2
self.level=3
when 5000..9999
leveled_up=true if self.level==3
self.level=4
# ...
end
end
但是,这是行不通的。即使用户拉平leveled_up返回false功能...
我必须做一些错误的...
谢谢!
那么什么(不是“它不工作”更具体)的问题?难道用户只是没有看到“HOORAY”,你在某个地方或者其他地方发现异常? – 2009-08-21 22:11:48
克里斯,所述万岁不显示(有一个在视图中显示的函数)和 如果@ leveled_up == TRUE self.statpoints + = 5 马力= max_hp 端 未运行...(永不) – 2009-08-21 22:19:42