2013-01-01 106 views
1

我的Rails應用程序我有一個註冊模型,其中包含每個用戶的出席狀態。我想在當天顯示沒有用戶(百分比)。我發現總數不是的用戶從另一個表中的Register Table和Expected Users中顯示Today。Rails 3:轉換爲浮動軌道3

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

attendance = @totalnoofuserspresent/@expectedusers (ie: 5/10) 

目前我得到attendance:0

我想百分比,即以顯示它:50%或浮動,即:提前0.50

感謝....

回答

7

問題是,這兩個變量(@totalnoofuserpresent和@expectedusers)是整數。如果你只用整數進行操作,Ruby假定你想要一個整數。因此,在進行分區之前,您必須將其中一個變量轉換爲浮點數。

attendance = Float(@totalnoofuserspresent)/@expectedusers 

或更容易

attendance = @totalnoofuserspresent.to_f/@expectedusers 
+0

有沒有更好的解決方案? –

+0

謝謝..它的作品。 – Cyber

+1

我讀了類似number_to_percentage(100,:precision => 0)。 http://api.rubyonrails.org/classes/ActionView/Helpers/NumberHelper.html#method-i-number_to_percentage – Cyber