首页 > 解决方案 > 如何设置环境变量 DJANGO_SETTINGS_MODULE

问题描述

我一直在尝试将 pandas 数据帧发送到 django 数据库,但是当我尝试这样做时:

user = settings.DATABASES['default']['USER']
password = settings.DATABASES['default']['PASSWORD']
database_name = settings.DATABASES['default']['NAME']
# host = settings.DATABASES['default']['HOST']
# port = settings.DATABASES['default']['PORT']

database_url = 'postgresql://{user}:{password}@localhost:5432/{database_name}'.format(
    user=user,
    password=password,
    database_name=database_name,
)

engine = create_engine(database_url, echo=False)

我明白了:

ImproperlyConfigured: Requested setting DATABASES, 
but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE 
or call settings.configure() before accessing settings.

我能做些什么来解决这个问题?

编辑:当我尝试以下命令时python mamange.py shell

set DJANGO_SETTINGS_MODULE=main_project.settings

我得到:

File "<ipython-input-5-d6c3b615ad79>", line 1
    set DJANGO_SETTINGS_MODULE=main_project.settings
        ^
SyntaxError: invalid syntax

谢谢

标签: pythondjango

解决方案


export DJANGO_SETTINGS_MODULE=your_value假设您的服务器是 Linux,您可以通过在 bash 或 sh 控制台中键入来设置环境变量。

编辑:对于 Windows:

如果您使用的是 Powershell,则该命令应为$env:DJANGO_SETTINGS_MODULE= 'your_value'.

如果您使用的是批处理(又名“cmd”),它是set DJANGO_SETTINGS_MODULE="your_value"


推荐阅读