【发布时间】:2017-07-25 07:30:39
【问题描述】:
我现在正在构建如下所示的 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 = Blueprint('app', __name__) 这样的蓝图命名应用程序并从 server.py 注册它但我得到了 AttributeError: module 'urls' has no attribute 'app' 。
如何在其他文件中定义 url 路由器?
【问题讨论】:
-
您正在调用“应用程序”,但 python 不知道“应用程序”是什么。您是否忘记还为“应用程序”添加导入?你能发布更新的代码吗?
-
@FuzzyAmi 我也在
server.pyfrom myapp import urls和注册的蓝图urls.app 中添加了这一行
标签: python flask routes attributeerror