1

私のRailsアプリケーションには、各ユーザーの出席ステータスを含む登録モデルがあります。当日に存在するユーザーの数を(パーセンテージで)表示したいです。登録テーブルから今日存在するユーザーの総数と、別のユーザーからの予想ユーザーを見つけました。テーブル。

@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

前もって感謝します....

4

1 に答える 1

7

問題は、両方の変数(@totalnoofuserpresentと@expectedusers)が整数であるということです。整数のみで操作を実行している場合、Rubyは整数を戻したいと想定します。したがって、除算を行う前に、変数の1つをfloatに変換する必要があります。

attendance = Float(@totalnoofuserspresent) / @expectedusers

または簡単

attendance = @totalnoofuserspresent.to_f / @expectedusers
于 2013-01-01T10:22:27.333 に答える