Форум сайта python.su
Здравствуйте!
Нужно вывести на сайте список онлайн пользователей, я думаю сделать это так:
В модель юзер добавить поле last_activity (datetime) и определить такую Middleware:
class UserOnlineMiddleware(object): def process_request(self, request): user = request.user if user.is_authenticated(): user.last_activity = timezone.now() user.save(update_fields=['last_activity'])
Офлайн
Одно из решение будет вставить js который будет посылать ajax запрос на сервер через какое-то время. Ваша задача ловить этот запрос и сделать вокруг этого считалку онлайновых пользователей.
Офлайн
1) считать “Гостей” не нужно?
2) У пользователя 5 минут открыта страница, но он не запрашивает ничего с сайта - бэкэнд должен считать его отвалившимся или активным?
Если на оба вопроса ответы нет, то решение нормальное.
Офлайн