学習管理システムに取り組んでいます。RoRの人ではありません。受けたクイズに基づいて平均スコアを生成するHAMLのラインを用意します。
="#{(QuizResult.average('score', :conditions => "user_id = #{@user.id}") * 100).round}%"
quiz_resultsテーブルには、used_idとscoreの列があります。
ただし、quiz_resultsテーブルにレコードがない場合、ページはレンダリングされません。そのユーザーIDにスコアが存在するかどうかを確認し、存在する場合は平均を表示したいと思います。存在しない場合は「クイズなし」と表示したい。これが私が持っているものです:
19: %td
20: -if QuizResult('score', :conditions => "user_id = #{@user.id}").exists?
21: ="#{(QuizResult.average('score', :conditions => "user_id = #{@user.id}") * 100).round}%"
22: -else
23: %em No quizzes taken
次のエラーが発生します。
app / views / manage_users /show_all_users.hamlの20行目のActionView:: TemplateError(#ActionView :: Base:0x7028c7f5cb88>の未定義のメソッド `QuizResult'):"
私はこれで一日中苦労してきました。助言がありますか?RoRnoobからよろしくお願いします。