【发布时间】:2019-03-25 11:12:03
【问题描述】:
我想设置一个环境变量DATABASE_URL 将由我的 Flask 应用程序读取以连接到数据库。我使用set DATABASE_URL = '...',但是当我使用flask run 时,我收到一个错误,即未设置变量。为什么这不起作用?
import os
from flask import Flask
from sqlalchemy import create_engine
app = Flask(__name__)
if not os.getenv("DATABASE_URL"):
raise RuntimeError("DATABASE_URL is not set")
engine = create_engine(os.getenv("DATABASE_URL"))
我导航到 project1 的安装目录并在 Windows 10 cmd.exe 中执行以下操作:
set FLASK_APP = application.py
set FLASK_DEBUG = 1
set DATABASE_URL = 'postgres.......' (the credential given by the Heroku account)
flask run
Flask 运行,我去localhost:5000,得到如下错误:
Traceback (most recent call last):
File "c:\program files\python36\lib\site-packages\flask\_compat.py", line 35, in reraise
raise value
File "C:\Program Files\Python36\learningPython\web_CS50\project1\application.py", line 12, in <module>
raise RuntimeError("DATABASE_URL is not set")
RuntimeError: DATABASE_URL is not set
【问题讨论】:
标签: python windows flask environment-variables