Население базы данных с моделями django, ошибка module not found
Я только начинаю работать с фреймворком Django по книге "The Definitive Guide to Django". Я использовал psycopg2 для написания моих SQL-запросов вставки (Postgres) через скрипт с именем scrape.py. Я хотел перейти на использование моделей Django, однако при попытке запустить django.core.exceptions.ImproperlyConfigured я получаю ошибку from models import articles. Сначала я использовал
import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'CannaMed.settings'
Но получил ошибку
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/db/models/base.py", line 127, in __new__
app_config = apps.get_containing_app_config(module)
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/apps/registry.py", line 260, in get_containing_app_config
self.check_apps_ready()
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/apps/registry.py", line 137, in check_apps_ready
settings.INSTALLED_APPS
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/conf/__init__.py", line 87, in __getattr__
self._setup(name)
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/conf/__init__.py", line 74, in _setup
self._wrapped = Settings(settings_module)
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/conf/__init__.py", line 183, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ModuleNotFoundError: No module named 'CannaMed'
Затем я добавил
import django
django.setup()
и получил ошибку:
Traceback (most recent call last):
File "scrape.py", line 2, in <module>
django.setup()
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/__init__.py", line 19, in setup
configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/conf/__init__.py", line 87, in __getattr__
self._setup(name)
File "/home/ian/CannaMed/venv/lib/python3.8/site-packages/django/conf/__init__.py", line 67, in _setup
raise ImproperlyConfigured(
django.core.exceptions.ImproperlyConfigured: Requested setting LOGGING_CONFIG, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
Напоследок я просто зашел в интерактивную оболочку и выполнил команду `import CannaMed.settings', и она выдала мне ModuleNotFoundError.
Ниже представлено дерево моих каталогов, settings.py и sys.path.
Дерево:
.
├── CannaMed
│ ├── asgi.py
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── close.py
├── dataanalysis.py
├── geckodriver.log
├── journalfeed
│ ├── admin.py
│ ├── apps.py
│ ├── geckodriver.log
│ ├── __init__.py
│ ├── migrations
│ │ ├── 0001_initial.py
│ │ ├── 0002_users_id_alter_users_email_alter_users_visits.py
│ │ └── __init__.py
│ ├── models.py
│ ├── nlp.py
│ ├── scrape.py
│ ├── tests.py
│ └── views.py
├── manage.py
└── templates
└── CannaMed
└── index.html
settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'journalfeed',
]
sys.path
['', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/home/ian/CannaMed/venv/lib/python3.8/site-packages']
Попробуйте добавить CannaMed в INSTALLED_APPS