Flask config.py未发回数据库\u URL

Flask config.py未发回数据库\u URL,flask,environment-variables,flask-sqlalchemy,Flask,Environment Variables,Flask Sqlalchemy,my config.py: """Flask config.""" import os from dotenv import dotenv_values basedir = os.path.abspath(os.path.dirname(__file__)) configuration = dotenv_values(".env") class Config(object): DEBUG = False

my config.py:

"""Flask config."""
import os
from dotenv import dotenv_values

basedir = os.path.abspath(os.path.dirname(__file__))

configuration = dotenv_values(".env")

class Config(object):
    DEBUG = False
    TESTING = False
    CSRF_ENABLED = True
    SECRET_KEY = os.environ.get('SECRET_KEY')
    SQLALCHEMY_DATABASE_URI = os.environ.get('DATABASE_URL')

class ProductionConfig(Config):
    DEBUG = False
我正在尝试使用另一个py文件连接到DB:

import psycopg2
import xlrd
from config import Config


POSTGRES = Config.SQLALCHEMY_DATABASE_URI
connection = psycopg2.connect(POSTGRES)
cursor = connection.cursor()
但POSTRES没有

my.env文件位于同一目录中,如下所示:

FLASK_APP=wsgi.py
FLASK_ENV=development
SECRET_KEY=randomstringofcharacters
DATABASE_URL='postgresql://xxx:xxxxx@127.0.0.1:5432/xxxxx'
我的所有文件都在同一个目录中。

dotenv_values()
不会对本地环境产生副作用。您需要
加载\u dotenv()
,这样就可以了


参见

那么是POSTGRES还是POSTRES?您只需在声明POSTGRES后立即在配置部分中添加一个print,以验证它是否确实具有值。