J'ai créé un quiz et affiché que dans une par page et vérifier que la réponse est correcte ou non et ajouter 1 dans la base de données sinon 0 pour user_id 3
+----+--------+--------------+---------+---------------+------------+-------+
| id | answer | questions_id | user_id | exam_group_id | modules_id | marks |
+----+--------+--------------+---------+---------------+------------+-------+
| 1 | ans1 | 1 | 3 | 1 | NULL | 1 |
| 2 | ans2 | 2 | 3 | 1 | NULL | 1 |
| 3 | ans3 | 3 | 3 | 1 | NULL | 0 |
| 4 | ans2 | 4 | 3 | 1 | NULL | 0 |
+----+--------+--------------+---------+---------------+------------+-------+
je veux que la somme de la colonne des marques soit affichée dans la connexion administrateur, user_id 1 dans le contrôleur
@answers = Answer.find(:all)
@total = @answers.map(&:marks).sum
en vue
<%= @total || "-" %>
il affiche uniquement - pas @total
Réponses:
0 pour la réponse № 1Je ne sais pas trop quoi @answers
est ou comment il a été calculé. Quoi qu'il en soit, je suppose que le tableau ci-dessus est le tableau des quiz.
Si oui, veuillez essayer:
@total = Answer.sum(:marks, :conditions => {:user_id => [3]})
Ou
@total = Answer.where(:user_id => [3]).sum :marks