Rails 3:转换为Rails中的Float 3

Cyb*_*ber 1 ruby-on-rails ruby-on-rails-3

我的Rails应用程序我有一个注册模型,其中包含每个用户的出勤状态.我想在当天显示当前用户数(百分比).我发现从注册表和预期用户到现在的用户总数表.

@totalnoofuserspresent = Register.where(:date => date).sum(:one)
@expectedusers = Workoutplanperday.where(:day => date , :workoutplantype => 1).count 

attendance = @totalnoofuserspresent / @expectedusers  (ie: 5/10 )
Run Code Online (Sandbox Code Playgroud)

目前我正在接受 attendance:0

我希望以百分比显示它,即:50%或浮动,即:0.50

提前致谢....

Rol*_*der 7

问题是,两个变量(@totalnoofuserpresent和@expectedusers)都是整数.如果您只使用整数进行操作,Ruby假定您想要一个整数.因此,在进行除法之前,必须将其中一个变量转换为浮点数.

attendance = Float(@totalnoofuserspresent) / @expectedusers
Run Code Online (Sandbox Code Playgroud)

或者更容易

attendance = @totalnoofuserspresent.to_f / @expectedusers
Run Code Online (Sandbox Code Playgroud)