Ограничение множественного входа для пользователя в Django Rest Framework

Я пытаюсь ограничить несколько входов в систему от одного пользователя в моем webapp и для этого я следую этому руководству:

https://dev.to/fleepgeek/prevent-multiple-sessions-for-a-user-in-your-django-application-13oo

Я следовал этому шагу за шагом, и когда я вхожу в систему с помощью postman (или чего-либо еще):

http://localhost:8000/api/token/

Я не могу увидеть ни одной сессии, которая была создана в ORM. Это происходит потому, что я использую JWTAuthentication ?

apps.py

class AccountsConfig(AppConfig):
    name = 'users'
    
    def ready(self):
        import users.signals

signals.py

@receiver(user_logged_in)
def on_user_logged_in(sender, request, **kwargs):
    LoggedInUser.objects.get_or_create(user=kwargs.get('user'))


@receiver(user_logged_out)
def on_user_logged_out(sender, **kwargs):
    LoggedInUser.objects.filter(user=kwargs.get('user')).delete()

Models.py

class User(AbstractUser):
    is_company = models.BooleanField(default=False)
    is_employee = models.BooleanField(default=False)
    is_client = models.BooleanField(default=False)

    @property
    def full_name(self):
        return self.first_name + " " + self.last_name



class LoggedInUser(models.Model):
    user = models.OneToOneField(User, related_name='logged_in_user', on_delete=models.CASCADE)
    # Session keys are 32 characters long
    session_key = models.CharField(max_length=32, null=True, blank=True)

    def __str__(self):
        return self.user.username

Когда я пытаюсь runserver с этой конфигурацией, она показывает следующую ошибку:

django.core.exceptions.ImproperlyConfigured: Ярлыки приложений не уникальны, дубликаты: пользователи

settings.py

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'rest_framework.authtoken',
    'corsheaders',
    'users',
    'users.apps.AccountsConfig',

Где users - имя приложения

Вернуться на верх