我刚开始使用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.
我想知道这里有什么问题,教程没有直截了当地说明这个错误。
答案 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