amio
@amio
Newbie web-developer)

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

Добрый день.

Есть проект, в котором есть пользователи и есть комментарии к некоторой сущности.

Как правильно сделать индикацию непрочитанности сообщений? Т.е. для одного пользователя сообщение "А" может быть прочитанным, а для другого, это же сообщение "А" может быть непрочитанным.

Ничего кроме таблицы по непрочитанным комментам не пирходит (id_comment, id_user)

Проект на Yii2.

Заранее спасибо.
  • Вопрос задан
  • 670 просмотров
Пригласить эксперта
Ответы на вопрос 5
BuriK666
@BuriK666
Компьютерный псих
записывать дату последнего посещения топика, и все комментарии, которые были после даты последнего посещения считать непрочитанными.
Ответ написан
sabramovskikh
@sabramovskikh
Статистика по посещаемости не ведется?
Можно вести статистику, на каких страницах был пользователь в какое время.
Соответственно соотнести время посещения и время публикации комментариев.
Ответ написан
Комментировать
Noizefan
@Noizefan
По дате 100%.
Это экономно по отношению к дисковому пространству.
Ответ написан
Комментировать
@bkosun
Ничего кроме таблицы по непрочитанным комментам не пирходит
(id_comment, id_user)


так как предлагаю я (хранить в табличке непрочитанные комменты) можно сделать как у вк, то есть ты можешь открыть диалог, и если у тебя сообщения не были на экране, то они не станут прочитанными. Тоже прикольная штука.


Предположим, что в системе зарегистрировано 100500 пользователей, после добавления нового комментария нужно будет добавить всем информацию о новом непрочитанном комментарии? А если комментарий отредактируют? А что делать с новыми пользователями?

Правильно хранить просмотры, а не "непрочитанные комментарии":

comments
id, user_id, text, ...

comment_views
id, comment_id, user_id, ...
Ответ написан
@maiskiykot
Free coder
А почему все пытаются всегда все писать в базу? Есть же куки и в большинстве случаев достаточно записать клиенту в куки и все. Зачем грузить базу?
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы