Flask_notes

栏目: Python · 发布时间: 6年前

内容简介:这是学习 flask 的第一篇笔记,重在快速概览,了解上手的一些基础知识。或者如何让其它机器也访问到呢?指定监听所有 IP 地址即可。

【整理】Flask 学习笔记之一

这是学习 flask 的第一篇笔记,重在快速概览,了解上手的一些基础知识。

1、如何启动 falsk

$ export FLASK_APP=yourfile.py
$ flask run

或者

$ export FLASK_APP=yourfile.py
$ python -m flask run

如何让其它机器也访问到呢?指定监听所有 IP 地址即可。

flask run --host=0.0.0.0

启动调试模式

$ export FLASK_ENV=development

2、路由参数类型转换

@app.route('/path/<path:subpath>') 的转换类型

类型 说明
string 接受任何不包含斜杠的文本(默认值)
int 接受正整数
float 接受正浮点数
path 类似 string ,但可以包含斜杠
uuid 接受 UUID 字符串

3、唯一的 URL/ 重定向行为

@app.route('/projects/')@app.route('/about') 只有一个斜杠的区别,前者如果在地址中未加斜杠,flask 也会帮你重定向到正确位置,但后者如果加了斜杠则会 404 错误!

4、URL构建

url_for() 函数用于构建指定函数的URL。为什么用它呢?

  • 翻转通常比硬编码URL的表述性更好
  • 便于集中处理,减少散落
  • URL创建会处理特殊字符的转移和 Unicode 数据
  • 生产的路径总是绝对路径,可以避免相对路径产生副作用
  • 即是应用不在URL根路径,那么它也会妥善处理

5、响应不同的HTTP方法

通过装饰器的 Methods 参数来指定响应的方法,例如:

@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST'
        return your_post()
    else:
        return your_get()

6、渲染模板

这里 flask 跟 Django 一样,都采用了模板的方式,免去用户自己转义的麻烦。一个简单例子:

from flask import render_template

@app.route('/hello/')
@app.route('/hello/<name>')
def hello(name=None):
    return render_template('hello.html', name=name)

Flask 会在 templates 文件夹内寻找模板。因此,如果你的应用是一个模块, 那么模板文件夹应该在模块旁边;如果是一个包,那么就应该在包里面:

情形 1 : 一个模块:

/application.py
/templates
    /hello.html

情形 2 : 一个包:

/application
    /__init__.py
    /templates
        /hello.html

学习原文


以上所述就是小编给大家介绍的《Flask_notes》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Intel汇编语言程序设计

Intel汇编语言程序设计

Kip Irvine / 电子工业出版社 / 2007-9-1 / 61.00元

《国外计算机科学教材系列•Intel汇编语言程序设计(第5版)》全面细致地讲述了汇编语言程序设计的各个方面。从微处理器体系结构、工作机制到指令集;从最基本的编译器链器的使用到高级过程、结构和宏的使用;从用纯汇编编写程序到用C/C++等最新编译器与汇编的混合接口编程;从16位实模式下BIOS、DOS实模式文本及图形程序设计到32位保护模式的Windows程序设计;从磁盘基础知识到Intel指令编码、......一起来看看 《Intel汇编语言程序设计》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具