2016-05-05 17 views
2

Wie der Titel schon sagt, versuche ich eine Umgebungsvariable in einer Konfigurationsdatei für ein Flask-Projekt (in Windows 10) zu verwenden.Einstellen von Umgebungsvariablen in virtualenv (Python, Windows)

Ich benutze ein virtuelles env und bis jetzt habe ich versucht, set "DATABASE_URL=sqlite:///models.db" zu /Scripts/activate.bat im virtualenv-Ordner hinzuzufügen. Aber es scheint nicht zu funktionieren. Irgendwelche Vorschläge?

Antwort

0

Flask nimmt Konfigurationsvariablen nicht automatisch von Umgebungsvariablen. Sie haben sie wie so auch manuell einstellen:

app.config.from_envvar('YOURAPPLICATION_SETTINGS') 

Weitere Informationen zur Konfiguration kann here finden.

Um eine Umgebungsvariable in Windows festgelegt, sollten Sie als here beschrieben tun:

setx DATABASE_URL=sqlite://something.something 
+0

ist, den Code zum Lesen der Konfigurations 'app.config.from_object ('config.DevelopmentConfig')' und in der Konfigurationsdatei: 'Klasse DevelopmentConfig (baseconfig) SQLALCHEMY_DATABASE_URI = os.environ [‘ DATABASE_URL '] ' Dies ist die Fehlernachricht erhalte ich: ' config.py " Linie 7, in baseconfig SQLALCHEMY_DATABASE_URI = os.environ [ 'DATABASE_URL'] os.py", Linie 425, in __getitem__ Rückgabe selb.data [Schlüssel.Upper()] KeyError: 'DATABASE_URL'' –

+0

Überprüfen Sie die Dokumentation. Das ist der genaue Code, der dort gefunden wird. – lesingerouge

+0

Ja, aber von dem, was ich in den Dokumenten sehen kann, gibt es keine Informationen darüber, wie man eine Umgebungsvariable in einem virtualenv (Windows) –

0

Das Problem war, dass PyCharm die virtualenvironment nicht aktiviert werden, wenn die Lauftaste drücken. Es verwendet nur die virtualenv python.exe. Diese

+0

setzt. Haben Sie jemals eine Lösung gefunden? Ich versuche dasselbe mit Pycharm unter Windows zu machen. –

Verwandte Themen