Как рассчитать средний рейтинг пользователя по всем его / ее узлам с Fivestar?

На моем сайте пользователи могут оценивать узлы друг друга через поле Fivestar под названием " Звезды" в комментарии. Теперь я хотел бы подсчитать общий средний балл пользователя. Это означает, что я хотел бы отобразить среднюю оценку пользователя для всех его узлов.

Например. Допустим, пользователь создал 2 узла: узел 1 и узел 2. Некоторые люди оценили его содержание:

  • Счета Node 1: 4/5, 5/5, 3/5
  • Счета Node 2: 4/5, 4/5

Общее среднее тогда будет (4+5+3+4+4)/5=4.

Желательно, чтобы этот результат также отображался в виде звездочек.

Как я могу это сделать?


Изменить: Работа с модулем Computed Field, кажется, общая идея, чтобы решить эту проблему. Это выглядит хорошо для меня, и я думаю, что лучше хранить средний балл пользователей в поле пользователя, чтобы сделать его легко доступным. (Работать с представлением тоже хорошо.) Я планирую отобразить средний балл на странице своего профиля, но, возможно, я собираюсь использовать его и в будущем на веб-сайте.

Можете ли вы помочь мне (набросок) кода, который я должен использовать?

1 ответ

Решение

@Thomas4019 предоставил отличное решение на https://drupal.stackexchange.com/questions/95617/how-to-calculate-the-users-average-rating-on-all-his-her-nodes-with-fivestar. Еще раз спасибо за все усилия!

Другие вопросы по тегам