Ich spiele mit Kolben. Meine Verzeichnisstruktur ist wie folgt:Eine Flask-App in mehrere Dateien aufteilen
|--------flask-test
|----------------app
|-----------------------static
|-----------------------templates
|-----------------------venv
|-----------------------__init__.py
Der venv
Ordner enthält meine virtuelle Kolben-Installation. Mein __init__.py
ist etwa so:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
Dies ohne Probleme funktioniert aber jetzt würde Ich mag diese in zwei Dateien __init__.py
und main.py
aufzuspalten. Die main.py
wäre im selben Verzeichnis wie __init__.py
. Bisher habe ich versucht:
__init__.py
:
from flask import Flask
app = Flask(__name__)
import main
main.py
:
from app import app
@app.route("/")
def hello():
return "Hello World!"
Jedoch habe ich eine Störung erhalte, dass das Modul app
nicht in main.py
existiert dann versuche ich __init__.py
zu laufen. Was mache ich hier falsch? Auch wo sollte ich die Run-Methode setzen?
Sie haben einen kreisförmigen Import ... Sie können main nicht in '__init__' importieren. Und setzen Sie die Methode run in main, nachdem Sie die Routen –