我正在阅读Flask quickstart指南,但是使用变量进行路由的示例对我来说并不适用。
from flask import Flask
app = Flask(__name__)
@app.route('/') # fine
def index():
return 'Index Page'
@app.route('/hello') # fine
def hello():
return 'Hello World!'
@app.route('/user/<username>') # <- fails unless trailing slash here
def show_user_profile(username):
return 'User {}'.format(username)
if __name__ == '__main__':
app.run()
我还尝试了与指南中完全相同的代码。我的第一个要点中的错误是意料之中的吗?快速入门版本中的代码应该工作吗?还是我误解了什么?
我使用的是Python 2.7.10、Flask 0.10.1、Werkzeug 0.10.4
这段代码已经在我的机器上使用了Python 2.7。
如果您正在使用多个参数,那么您的代码中缺少了{0}。
from flask import Flask
app = Flask(__name__)
@app.route('/') # fine
def index():
return 'Index Page'
@app.route('/hello') # fine
def hello():
return 'Hello World!'
@app.route('/user/<username>') # <- fails unless trailing slash here
def show_user_profile(username):
if request.url[-1] != '/':
return redirect(request.url + '/')
return 'User {0}'.format(username)
if __name__ == '__main__':
app.run()
正如您将看到的,我又添加了两行代码
if request.url[-1] != '/':
return redirect(request.url + '/')
上面的行将确保带有尾部斜杠的路由仍然有效。如果需要,您需要操作任何其他路径
,而不是/
。请尝试此代码。
我在python2中尝试了这个例子,效果很好,但在python3中出现了您描述的问题。你用的是第三版吗?如果你真的需要它,你确定你真的需要它吗?
看看这个http://flask.pocoo.org/docs/0.10/python3/#python3-支持
我想重定向下的任何路径到静态应用。下面的视图应该捕获这些路径并提供相应的文件(它只打印本示例的路径)。这适用于,和。为什么路径会导致404错误?
文档指出,定义路由的首选方式是包含一个尾随斜杠: 这样,客户端就可以或并接收相同的结果。 但是,发布的方法没有相同的行为。 在这里,如果您,那么如果您不是在调试模式下运行,它将以失败,或者如果您是在调试模式下运行,它将以以下通知失败: 请求已发送到此URL(HTTP://localhost:5000/foo),但路由系统自动发出重定向到“HTTP://localhost:5000/foo/”。UR
quickstart 本教程假设你从头开始,没有Kafka和ZooKeeper历史数据。 quickstart_download 下载 0.10.0.0 的正式版本并解压。 > tar -xzf kafka_2.11-0.10.0.0.tgz > cd kafka_2.11-0.10.0.0 quickstart_startserver Kafka依赖ZooKeeper因此你首先启动一个ZooKe
这个页面包含的示例代码将简单介绍如何使用数据库类。更详细的信息请参考每个函数单独的介绍页面。 初始化数据库类 下面的代码将根据你的 数据库配置 加载并初始化数据库类: $this->load->database(); 数据库类一旦载入,你就可以像下面介绍的那样使用它。 注意:如果你所有的页面都需要连接数据库,你可以让其自动加载。参见 数据库连接。 多结果标准查询(对象形式) $query = $
环境搭建 创建工程 目录规范 开发调试 页面开发 打包Bundle
Yii 提供了一整套用来简化实现 RESTful 风格的 Web Service 服务的 API。 特别是,Yii 支持以下关于 RESTful 风格的 API: 支持 Active Record 类的通用 API 的快速原型; 涉及的响应格式(在默认情况下支持 JSON 和 XML); 支持可选输出字段的定制对象序列化; 适当的格式的数据采集和验证错误; 集合分页,过滤和排序; 支持 HATEO