Добрый день. Пытаюсь написать свою небольшую цмску на джанге, посоветуйте, как лучше реализовать систему рейтинга постов на сайте. Интересует сторона хранения рейтинга на сайте. Как лучше создать модель(модели), в которой будут хранится записи о голосовании постов. Почесал голову, подумал о таком: при создание поста в ветку РЕЙТИНГ_ПОСТА вносить такие параметры:
---------------------------------------------------------------------------------
ID_ПОСТА | ID_АВТОРА | ВСЕГО_ПРОГОЛОСОВАЛО | ОБЩАЯ_СУММА_РЕЙТИНГА |
---------------------------------------------------------------------------------
253 | 4 | 0 | 0 |
---------------------------------------------------------------------------------
когда пользователь нажимает на ±/посмотреть результат, происходит запись добавление на+1 в колонку ВСЕГО_ПРОГОЛОСОВАЛО(если не смотрел результат) и осуществляет +1 или -1 в колонку ОБЩАЯ_СУММА, так же, осуществляется запись в другую ветку базы:
----------------------------------------------------------------------------------
ID_ПОЛЬЗОВАТЕЛЯ | ID_ПОСТА | ПЛЮС | МИНУС | ПОСМОТРЕЛ_РЕЗУЛЬТАТ |
----------------------------------------------------------------------------------
5 | 253 | 1 | 0 | 0 |
----------------------------------------------------------------------------------
в этой базе хранится индивидуалка к каждому пользователю и посту, чтобы пользователь не смог повторно проголосовать… с одной стороны, вроде бы функционально получится, а вот с другой, как представлю, сколько запросов к БД будет идти от такого нагромождения… может есть у кого лучше решение этого вопроса?