Ich strukturiere jetzt Flask-Anwendung wie unten.Flask Router von anderen Datei
myserver
- server.py
- myapp
-- urls.py
-- models.py
-- views.py
-- consts.py
Und meine Codes sind hier.
server.py
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
# Flask App
application = Flask(__name__)
# SQLAlchemy
application.config['SQLALCHEMY_DATABASE_URI'] = "sqlite:./local.db"
db = SQLAlchemy(application)
if __name__ == "__main__":
application.run(debug=True)
urls.py
from server import application
from . import views
@application.route('/')
def version():
return views.version()
Aber wenn ich server.py und offene http://localhost:5000/ Server laufen, sagt 404 Not Found
.
Also suchte ich auf stackoverflow, fand ich einige Beschreibungen über Blueprint
. Und ich mache Blueprint namens App wie app = Blueprint('app', __name__)
und registrieren Sie es von server.py Aber ich habe AttributeError: module 'urls' has no attribute 'app'
.
Wie kann ich URL-Router in anderen Dateien definieren?
Sie rufen "App" aber Python hat keine Ahnung, was "App" ist. Hast du vergessen, auch einen Import für 'App' hinzuzufügen? Können Sie den aktualisierten Code veröffentlichen? – FuzzyAmi
@FuzzyAmi Ich füge auch diese Zeile in 'server.py'' von myapp importieren URLs 'und registrierte Blaupause urls.app – kde713