我正在阅读这份文件:https ://flask-classful.teracy.org/
从上面的文档中复制了最小的应用程序。
from flask import Flask from flask_classful import FlaskView # we'll make a list to hold some quotes for our app quotes = [ "A noble spirit embiggens the smallest man! ~ Jebediah Springfield", "If there is a way to do it better... find it. ~ Thomas Edison", "No one knows what he can do till he tries. ~ Publilius Syrus" ] app = Flask(__name__) class QuotesView(FlaskView): @app.route("/") def index(self): return "<br>".join(quotes) QuotesView.register(app) if __name__ == '__main__': app.run()
当我运行这个应用程序时,它给出了 404 错误。
(venv) C:\fifa\web_app_flask_bootstrap>python app.py * Serving Flask app 'app' (lazy loading) * Environment: production WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Debug mode: off * Running on http://127.0.0.1:5000 (Press CTRL+C to quit) 127.0.0.1 - - [28/Jun/2022 13:44:56] "GET / HTTP/1.1" 404 -
我正在安装以下烧瓶相关的软件包:
Flask==2.1.2 Flask-Classful==0.14.2 Python version: 3.9.2
显示该错误的原因可能是什么?
试用1:更改端口并尝试。app.run(port=5001)得到同样的错误。
app.run(port=5001)
@app.route('/')您提供的链接中的代码片段在函数之前不包含装饰器index。并且,在片段之后,它立即说:Run this app and open your web browser to: http://localhost:5000/quotes/.
@app.route('/')
index
Run this app and open your web browser to: http://localhost:5000/quotes/
我不知道它是如何Flask-Classful工作的,但我猜它采用类的名称并将其用作端点(在本例中QuotesView,将前面的所有内容设为View小写)。但是,这又是一个猜测。
Flask-Classful
QuotesView
View