Задать вопрос
@agent1156

Как правильно сделать базу данных?

У меня каталог организаций. Есть раздел в котором список организаций, по клику можно перейти на страницу организации. Мне нужно реализовать функцию рейтинга. Зарегистрированный пользователь должен иметь возможность один раз оценить одну организацию. От этого должен выстраиваться список организаций по рейтингу. Как это реализовать ?
  • Вопрос задан
  • 238 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Onskills
    PHP: базовый курс
    1 месяц
    Далее
  • teamcoding
    TC200PY Разработка PHP веб-приложений на Yii2. Шаблон приложения advanced
    3 месяца
    Далее
  • FructCode
    Yii2 Фреймворк
    2 месяца
    Далее
Пригласить эксперта
Ответы на вопрос 1
Melkij
@Melkij
DBA для вашего PostgreSQL?
Таблица user_id, org_id, rating для лога кто именно за что и как проголосовал. Составной первичный ключ по user_id & org_id (или, возможно, org_id & user_id). В этой таблице проверять, голосовал ли этот пользователь уже за эту организацию.
В таблицу организаций поле рейтинга с агрегированным значением текущего рейтинга, возможно количества проголосовавших и чего ещё надо для отображения. Не вычислять рейтинг в рантайме по таблице голосов.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы