新版本的Flask中如何启动开发服务器和开启调试模式

从Flask 0.11版本开始,官方就建议使用flask run命令来取代app.run()方法运行开发服务器。尽管如此,两年多过去了,仍然有大量新发布的文章和教程在示例中使用app.run()方法启动程序。类似的,虽然内置的命令行支持已经非常完善,但还有很多人在使用Flask-Script。 阅读全文

李辉

2018年7月28日

维护开源项目最怕的大概就是遇见这种提问者:不知道自己要问什么(XY问题),不提供足够的信息(或是提供不全面的甚至是错误的信息),不思考你给出的观点和建议,只希望你给出最终的解决代码。更要命的是,他们还会不断提供不相干的信息和更多的无关问题,给你制造烟雾弹。https://github.com/greyli/flask-ckeditor/issues/8

Flask test_client()测试客户端为勾选框传递布尔值数据

今天写单元测试发现了一个常见的问题,即测试时发送POST请求时如何传入布尔值数据(勾选框字段值)?答案是:你没法直接传递布尔值。其实这个答案相当显而易见,客户端当然没法向服务器端发送Python类型的数据,数据的转换是在接受到请求数据后在服务器端进行的。之前在不借助Flask-WTF/WTForms,手动编写表单并处理时就已经注意到了这个问题,不过在测试中不太容易想到。 阅读全文

使用Python创建随机文件名

当用户上传文件时,为了进行统一处理,我们可以为所有文件创建随机文件名。Python标准库中的uuid模块很适合用来生成文件名。我一般会使用uuid.uuid4().hex作为随机文件名,因为它会返回16进制字符串形式的uuid,并且不包含连字符,更易读: 阅读全文

Flask问题集散地:Flask-China

大多数人遇到Flask问题时,第一时间是到网络上去搜索,但这显然不是正确的做法。在发生问题后,正确的做法是先检查代码并查看相关文档和源码。执行完这些步骤后,如果问题还没有解决,那么这时可以上网搜索。当然,最好的方式是使用英文关键词在Google上面搜索。 阅读全文

使用Flask-Avatars在Flask项目中设置头像

Flask-Avatars

大多数Web程序中都会涉及到头像的实现。不同类型的项目,对于头像的需求不同,有些项目可以直接使用Gravatar提供的头像服务,而有的项目则需要提供自定义头像设置。扩展Flask-Avatars几乎满足了所有常见的头像需求: 阅读全文