Структура таблицы с действиями пользователей

Доброго времени суток!
Имеется таблица с действиями пользователей, условно назовём её 'actions'. В таблице имеются такие колонки: 'user', 'date', 'action'. На счёт первых двух, я думаю, ни у кого вопросов не возникнет, а вот на счёт третьей: хотелось бы в третью колонку таблицы записывать действия пользователей в виде JSON-объекта. Получится своего рода лог действий:
{type: REGISTRATION}, {type: DOWNLOAD, item: 34}, {type: UPLOAD, item: 25}

Есть некоторый набор типов действий, который впоследствии будет расширяться. В конечном итоге всё это должно будет парситься и выводиться в виде строки, к примеру 'Пользователь был зарегистрирован'. Каким образом правильнее всего реализовать структуру такого вида таблицы?
  • Вопрос задан
  • 2642 просмотра
Пригласить эксперта
Ответы на вопрос 2
dizballanze
@dizballanze
Software developer at Yandex
Тип все же лучше в отдельное поле вынести, на случай если захотите по типу сортирова/группировать.
Ответ написан
dizballanze
@dizballanze
Software developer at Yandex
Ну так вы бы сразу написали, что это MongoDB. В нем нет такого понятия как таблица, есть коллекции.
Т.к. в MongoDB отсутствует формальная схема, то можно просто в коде сформировать нужные типы, данные к каждому из них и записывать все это дело в отдельную коллекцию. Единственное, тип хранить всегда в одном и том же поле и повесить на него индекс.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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