Django: как хранить информацию о нескольких логинах одного и того же пользователя с разных устройств - PullRequest
1 голос
/ 21 сентября 2019

В модели Django User мы храним last_login, чтобы знать, когда последний пользователь входил в систему.

Но при условии, что я регистрируюсь из браузеров Firefox и Chrome и хочу сохранить информацию об устройстве и его имени входавремя, как мы можем это сделать.

Позже я могу видеть, откуда все устройства, в которые пользователь в данный момент вошел, и сколько раз вошли в систему с этих устройств.

1 Ответ

0 голосов
/ 22 сентября 2019

Рассмотрим создание новой модели с отношением многих к одному пользователю приложения.Эта модель с именем say UserSession может хранить такую ​​информацию, как тип устройства, время входа в систему и т. Д., И ее можно легко запросить для данного пользователя.

import datetime

from django.conf import settings
from django.db import models
from django.utils import timezone

class UserSession(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL)
    device_type = models.CharField(max_length=255)
    login_time = models.DateTimeField(default=timezone.now)
    is_active = models.BooleanField(default=True)

Экземпляр этой модели можно создавать при каждом новом времени входа в систему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...