Лучший подход к разработке структуры для системы присвоения значков

В настоящее время я занимаюсь дизайном одного образовательного сайта.

Для этого нам нужно присвоить пользователю некоторые значки в зависимости от его активности (например, stackoverflow).

Я искал основу для этого. Кто-нибудь знает, как это можно сделать? Дизайн стола и др.

Проблемы, о которых я мог подумать, следующие:

  1. У нас может быть большое количество значков, поэтому при каждом действии пользователя мы не можем проверять все значки и проверять, может ли быть назначен какой-либо значок.
  2. При добавлении новый значок и критерии для этого, я не хочу изменять существующий код, чтобы справиться с этим (можем ли мы иметь какое-то общее решение?)
  3. Какой БД я должен выбрать (скажем, если моя структура похожа, оно вызывает событие, когда критерии для одного значка удовлетворяет, и эти правила создаются в БД (например, sql). или я могу пойти на nosql db (например, mongodb, поскольку остальная часть моего проекта находится в mongodb)

Мой первоначальный поиск дал мне следующие вещи

  1. правило engine -> приведет к очень утомительной задаче Архитектура базы данных для системы «Badge» и произвольных критериев (MySQL / PHP)
  2. Один проект -> http://drupal.org/project/user_badges (не в состоянии понять это должным образом)
  3. люди говорят, что структура вашей таблицы должна быть такой и такой .. и все такое .. Лучший способ сохранить критерии значка? Создание «Значков» для моего сайта, лучший способ хранить значки пользователей? Используя PHP

7
задан Community 23 May 2017 в 12:33
поделиться