我現在正在像下面那樣構建Flask應用程序。來自其他文件的燒瓶路由器
myserver
- server.py
- myapp
-- urls.py
-- models.py
-- views.py
-- consts.py
而我的代碼在這裏。
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()
但是當我運行server.py和開放http://localhost:5000/服務器說:404 Not Found
。
所以我搜索了stackoverflow,我發現了一些關於Blueprint
的描述。我製作了一個名爲app的藍圖,如app = Blueprint('app', __name__)
,並從server.py註冊它,但我得到了AttributeError: module 'urls' has no attribute 'app'
。
如何在其他文件中定義url路由器?
你打電話給'app',但python不知道'app'是什麼。你忘了還爲'app'添加一個導入嗎?你能發佈更新後的代碼嗎? – FuzzyAmi
@FuzzyAmi我也在'server.py''中加入了這一行myapp import urls'並註冊了藍圖urls.app – kde713