Nameerror When Splitting App And Views Code
I want to divide my code into two parts, the app initialization and the view definitions. I import my views and define my app, but I get NameError: name 'manager' is not defined.
Solution 1:
You created a circular import: first you import viewports
, which imports manager
, which is only defined after you import viewports
. You also didn't organize your code correctly, everything should be under one package. You also confused creating a Flask-Script manager with creating a Flask app. Also, flask.ext
is deprecated, import directly from the package name.
my_project/
my_app/
__init__.py
views.py
manage.py
__init__.py
:
from flask importFlaskfrom flask_script importManager
app = Flask(__name__)
manager = Manager(app)
from my_app import views
views.py
:
from my_app import app
@app.route('/')defindex():
return'Hello, World!'
manage.py
:
from my_app import manager
manager.run()
Post a Comment for "Nameerror When Splitting App And Views Code"