0
我有以下幾列的examscore模型一個Fixnum循環:通過在軌
academic_year_id,grade_id,student_id數據,subject_id,total_score
,並用這些的averagescore模型列:
academic_year_id ,grade_id,student_id數據,平均
我的要求是由academic_year_id
和grade_id
通過Examscore
模型迭代,並計算出每個學生由學生所採取的所有科目的平均分(即總結所有科目的總成績除以受試者的數量),然後將該平均值存儲在AverageScore
模型中。我發現這很困難,任何幫助將非常感激。
我迄今所做的是:
total = 0
counter = 0
scores = Examscore.where(:academic_year_id => 3, :grade_id => 4)
scores.each do |std|
std.student_id.each do |tot|
total += tot.total_score
counter += 1
end
puts total.fdiv(counter)
但它失敗,因爲std.student_id
是Fixnum
不是Array
。
任何關於如何處理這個問題的指導?
這樣做的伎倆。乾杯 –