nskarl
@nskarl
Вообще дизайнер

Организация хранения статуса новых постов?

Привет всем в очередной раз!
В очередной раз задаю глупый вопрос, но допетрить самому тяму не хватило =)

Собственно вопрос:
Есть пользователи, есть пользовательские блоги, есть подписка на пользователей - самая обычная система юзер-блогов с подпиской
но вот не могу допетрить как решить проблему хранения статуса новых постов?
т.е. мне нужно чтобы каждый пользователь видел у себя в меню ссылку "Лента (4)" - где, "4" - кол-во не прочитанных новых постов в его ленте. Соотвественно заходил в ленту и это число обнулялось
Проблема в том, что пользователей много, блогов еще больше (у каждого пользователя может быть N-количество блогов) - соответственно не могу придумать как хранить статус каждому пользователю для каждого нового поста
на стаковерлфлоу прочитал про то, чтобы сравнивать пользовательский lastActivity и post_date - в принципе идея интересная, но не совсем подходящая.
Подксажите, гуру!
  • Вопрос задан
  • 218 просмотров
Решения вопроса 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Почему не очень подходящая?
Раньше эта проблема была популярной для форумов. И там как раз last activity не канала - никто не гарантировал, что в эту самую activity чувак прокликал по всем новым темам. Но для блогов ведь это не актуально: открыл ленту - считай, просмотрел.
Можно за lastActivity считать время, когда просматривал ленту.

И наоборот - если посты в ленте отмечать прочитанными только если зайти в него, то давно прочитанные будут иметь неверный статус.
Короче, не надо переусложнять.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
Если считать совсем честно (по постам) - то вопрос отлично бьется с Как организовать удаления записей из ленты пользователя?
Если устраивает вариант не совсем честного подсчета - то решение хранить для каждого пользователя lastActivity в каждом блоге на который он подписан - мне кажется вполне оптимальной
Ответ написан
Ваш ответ на вопрос

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

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