Ошибка DJ_REST_AUTH : NameError: имя 'dj_rest_auth' не определено

Я установил dj-rest-auth для Token Authentication.

Мой urls.py:

from django.contrib import admin
from django.urls import path, include

    
urlpatterns = [
    path('admin/', admin.site.urls),
    
    path('customer/', include('customer.urls')), #new
    path('api-auth/', include('rest_framework.urls')), # new
    path('customer/dj-rest-auth/', include(dj_rest_auth.urls)),
]

Settings.py:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'customer',
    'rest_framework.authtoken', # new
    'dj_rest_auth',
]

Мои требования.txt:

asgiref==3.4.1
dj-rest-auth==2.1.11
Django==3.2.7
django-rest-auth==0.9.5
djangorestframework==3.12.4
psycopg2-binary==2.9.1
pytz==2021.1
six==1.16.0
sqlparse==0.4.2

Но когда я пытаюсь runserver, он выдает мне

NameError: имя 'dj_rest_auth' не определено

Что я делаю не так?

Как документировано, вы должны включить его как строку "dj_rest_auth.urls", а не dj_rest_auth.urls, из которой не удается найти, где определено dj_rest_auth:

path('dj-rest-auth/', include('dj_rest_auth.urls'))

Это соответствует использованию django.urls.include(), который ожидает, что это будет имя модуля.

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