Импорт из каталога представлений
В моем проекте есть приложение под названием api
, где я храню свои наборы представлений в каталоге под названием views
. Я продолжаю получать ModuleNotFoundError: No module named 'api.views.book'; 'api.views' is not a package
, когда я импортирую в свой api/urls.py
api/urls.py
from rest_framework import routers
from api.views.book import BookViewset
router = routers.DefaultRouter()
router.register(r'books', BookViewset, 'books')
api_urls = router.urls
В моем основном файле urls.py я делаю следующее:
urls.py
from django.contrib import admin
from django.urls import path
from django.conf.urls import include
from api.urls import api_urls
urlpatterns = [
path('api', include(api_urls)),
path('admin/', admin.site.urls),
]
Я не получал ошибку, пока не импортировал api_urls
Следует отметить, что api
входит в INSTALLED_APPS
Вам нужно включить файл с именем __init__.py
в каталог, чтобы сделать его пакетом, тогда вы сможете импортировать из него
В вашем случае вам нужен файл api/views/__init__.py