Flask教程中的404错误

时间:2016-07-12 01:28:22

标签: python flask http-status-code-404

我刚开始使用Flask教程:

from flask import Flask
app = Flask(__name__)


@app.route('/user/<username>')
def show_user_profile(username):
    return 'User %s' % (username)

我收到以下错误:

The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.

我想知道这里有什么问题,教程没有直截了当地说明这个错误。

2 个答案:

答案 0 :(得分:0)

您需要激活虚拟环境。

source venv/bin/activate  

<强>已更新
在python shell上试试这个:

>>> from flask import Flask, url_for
>>> app = Flask(__name__)
>>> @app.route('/')
... def index(): pass
...
>>> @app.route('/user/<username>')
... def profile(username): pass
...
>>> with app.test_request_context():
...  print url_for('index')
...  print url_for('profile', username='John Doe')
...
/
/user/John%20Doe

您的网址缺少参数<username>

答案 1 :(得分:0)

正如@MattHealy指出的那样,你只有一条路线/user/<username><username>是&#34;动态网址的一部分&#34;。它在教程中正确解释:http://flask.pocoo.org/docs/0.11/quickstart/#variable-rules

这意味着URL的一部分作为参数传递给您的视图函数。然后在您的视图函数中,您可以像使用Python中的任何其他字符串一样使用它。因此,您需要向以下内容发送请求: http://localhost:5000/user/yourusername