本文参考:快速入门 — Flask 0.10.1 文档

路由

Flask使用route修饰器来关联URL与程序函数:

@app.route('/')
def hello_world():
return 'Hello World!'

动态路由

在route的参数中增加<variable_name> ,可使函数获得URL中的参数信息,比如:

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

我们可以采用 <converter:variable_name>对参数进行格式转换(过滤),常用的转换器包括:

int 整数
float 浮点数
path 包含斜杠的字符串

构造URL

使用url_for(),它能带来3个好处

  1. 描述性更好,抽象程度更高(起到类似变量的作用)
  2. 它可以自动转义特殊字符和Unicode数据

HTTP方法

HTTP 方法告知服务器,客户端想对请求的页面些什么。下面这些是比较常见的HTTP方法:

  • GET:浏览器告知服务器:只获取页面上的信息并发给我。这是最常用的方法。
  • POST:浏览器告诉服务器:想在 URL 上发布新信息。并且,服务器必须确保 数据已存储且仅存储一次。这是 HTML 表单通常发送数据到服务器的方法。
  • PUT:类似 POST 但是服务器可能触发了存储过程多次,多次覆盖掉旧值。与POST的区别在于触发次数,POST信息只触发一次。

默认情况下,路由只回应 GET 请求,但是通过 route() 装饰器传递 methods 参数可以改变这个行为:

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

静态文件

静态文件一般只供网页使用的CSS 或 JavaScript 资源。 只要在你的包中或是模块的所在目录中创建一个名为 static 的文件夹,在应用中使用 /static 即可访问。

例:静态文件的URL:url_for('static', filename='style.css'),该文件目录:static/style.css

模板渲染

Flask配备了Jinja2模板引擎

模板引擎可以提高HTML文件的抽象程度,从而减少我们编写HTML文件的工作量。

Flask 会在 templates 文件夹里寻找模板。

访问请求数据

在 Flask 中由全局的 request 对象来获得客户浏览器提交给服务器的数据。

request是Flask中的一个非常重要的对象,它联结了客户浏览器与服务器的整个交互过程。

关于request的具体信息详见:API——request

消息闪现

使用flash()方法可以在用户的网页中闪现一条消息,进而提高用户体验。

【先验知识归纳】Flask快速入门的更多相关文章

  1. Flask快速入门

    flask快速入门 1.1.三种框架比较 Django: 重武器,内部包含了非常多组件:ORM.Form.ModelForm.缓存.Session.中间件.信号等 Flask:短小精悍,内部没有太多组 ...

  2. 【转】Flask快速入门

    迫不及待要开始了吗?本页提供了一个很好的 Flask 介绍,并假定你已经安装好了 Flask.如果没有,请跳转到 安装 章节. 一个最小的应用 一个最小的 Flask 应用看起来会是这样: from ...

  3. Flask快速入门,知识整理

    一.Flask介绍(轻量级的框架,非常快速的就能把程序搭建起来) Flask是一个基于Python开发并且依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是 ...

  4. Flask官方文档学习-flask快速入门

    环境搭建 下载安装Python3:www.python.org 终端运行命令:python3 -m venv flask_dev,来创建虚拟环境 启用虚拟环境,终端使用命令 source /flask ...

  5. Flask 快速入门

    最简单的flask程序 from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return ...

  6. 二 Flask快速入门

    1: 外部可访问的服务器: 如果你运行了这个服务器,你会发现它只能从你自己的计算机上访问,网络中其它任何的地方都不能访问.在调试模式下,用户可以在你的计算机上执行任意 Python 代码.因此,这个行 ...

  7. flask 快速入门链接

    http://docs.jinkan.org/docs/flask/quickstart.html

  8. c语言快速入门3

    如果你想快速入门计算机,可以参考我的上一篇帖子,先了解一些必备的软知识,然后再来进行语言的快速入门 计算机入门基础知识 c语言快速入门1 c语言快速入门2 3.4.1 字符和字符串 字符:'' 单个  ...

  9. c语言快速入门2

    如果你想快速入门计算机,可以参考我的上一篇帖子,先了解一些必备的软知识,然后再来进行语言的快速入门 计算机入门基础知识 c语言快速入门1 1.1.12 函数的概念 函数的定义:c语言的基本单位,c语言 ...

随机推荐

  1. mongodb安装4.0(rpm)

    虚拟机客户端vmware player linux版本:CentOS Linux release 7.4.1708 (Core) CentOS安装类型:Basic Web Server 参照官网最新文 ...

  2. springBoot中使用定时任务

    简单示例 导入依赖 springBoot已经默认集成了定时任务的依赖,只需要引入基本的依赖就可以使用定时任务. <parent> <groupId>org.springfram ...

  3. Windows 通过批处理自动执行 linux服务器上面命令的办法

    1. 使用putty 下载地址 https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html 直接使用 exe版本就可以 https:/ ...

  4. Python项目部署-使用Nginx部署Django项目

    一.nginx介绍及部署 二.nginx部署路飞学城代码 nginx配置安装 同样,nginx也有很多的安装方式: 1)源码安装(运维偏向:规范,便于配置管理) 2)yum,rpm安装(为了效率可以选 ...

  5. BEX5下新建任务到待办任务

    List<OrgUnit> list = new ArrayList<OrgUnit>(); // 1.查询出执行者 String sql = "select t.f ...

  6. Linux程序宕掉后如何通过gdb查看出错信息

    我们在编写服务端程序的时候,由于多线程并且环境复杂,程序可能在不确定条件的情况下宕掉,还不好重新,这是我们如何获取程序的出错信息,一种方法通过打日志,有时候一些错误日志也不能体现出来,这时就用到我们的 ...

  7. $(function(){})简述

    用jQ的人很多人都是这么开始写脚本的: $(function(){ // do something }); 其实这个就是jq ready()的简写,他等价于: $(document).ready(fu ...

  8. idea中war和war exploded的区别及修改jsp必须重新启动tomcat才能生效的问题

    刚开始使用idea,发现工程每次修改JS或者是JSP页面后,并没有生效,每次修改都需要重启一次Tomcat这样的确不方便.我想Idea肯定有设置的方法,不可能有这么不方便的功能存在. 需要在Tomca ...

  9. vhdl when else

    在VHDL中,IF...THEN...ELSE是顺序语句,只能出现在行为描述中(进程体或者子程序中):而WHEN...ELSE是并行语句,可以直接出现在结构体中,但却不能出现在行为描述中.WHEN.. ...

  10. Nginx 进程间如何共享内存

    L:37 Nginx 针对多进程用的是自旋锁(占用共享内存时间比较短的情况下否则可能会影响性能)注:自旋锁是不停的请求共享内存 而原先的信号量是等待占用者释放后通知等待的进程