【发布时间】:2022-01-06 12:58:41
【问题描述】:
我正在尝试从外部 Python 脚本向 Django 数据库添加条目,但在尝试导入我的 Django 模型时遇到了错误。 我对数据库和单个 Python 脚本都使用 venv
我使用以下链接:django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured 在导入我的模型之前尝试设置 Django,但现在我遇到了以下错误: ModuleNotFoundError:没有名为“api.apps”的模块
我还将 Python 路径设置在我的项目目录的顶部,位于我的数据库和 Python 脚本之上。
我尝试创建的 Python 文件与我的数据库位于不同的文件夹中,代码如下: (请注意,我的 Django 数据库名称是 database,也是主要部分。我将“api”作为单独的目录。)
import os
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'proj.database.database.settings')
import django
django.setup()
from database.api.models import Example
这在 django.setup() 上失败。我已经用“from database.database.wsgi import *”做了一个替代尝试,导致同样的错误。
我不确定是什么原因造成的,因为当我运行数据库时,“api”中的模型看起来很好,我确实将 api 添加到“INSTALLED_APPS”。
这是我的 database.settings.py 中的 INSTALLED_APPS:
INSTALLED_APPS = [
'api.apps.ApiConfig',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
]
“api.apps”是我项目中的一个基本文件,除了默认行为之外,我对它没有做太多的事情。
什么仍然会导致 API.apps 出现 ModuleNotFoundError?
【问题讨论】:
-
放下api.apps.ApiConfig
-
@sarangkkl 你能澄清一下在哪里放置 api.apps.ApiConfig 吗?如果您的意思是在 INSTALLED_APPS 中,它已经存在。或者你的意思是 Python 脚本中的某个地方?
标签: python django python-venv