Да уж точь в точь
Кстати, писать импорт в функции хорошая практика?
приложения где создавать? на один уровень с проектом и окружением или в проект помещать?
django-admin startapp shop
tree -L 2
.
├── crm
│ ├── asgi.py
│ ├── __init__.py
│ ├── __pycache__
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── manage.py
├── shop
│ ├── admin.py
│ ├── apps.py
│ ├── __init__.py
│ ├── migrations
│ ├── models.py
│ ├── tests.py
│ └── views.py
└── venv
├── bin
├── include
├── lib
├── lib64 -> lib
├── pyvenv.cfg
└── share
!Восклицание
Отрица́ние (инве́рсия, от лат. inversio — переворот, логи́ческое «НЕ»)
Чем конкретно?
В этом нет проблемы, токен можно инвалидировать (удалить из белого списка или добавить в черный, в зависимости от реализации). Как access так и refresh. + не забываем про ограничение по времени (срок жизни токена).
Встречный вопрос: Что будет если пароль попадёт к злоумышленнику?