在这里先说一下最开始所经历的一些错误app=Flask(_name_),当初拼写的时候怎么都报错后来发现此处是两个'_'

配置文件

app.config.from_object(__name__)  在当前文件中查询配置项

app.config.from_envvar('FLASKR_SETTINGS', silent=True)    在文件中查询配置现,其中FLASKR_SETTINGS代表环境变量,silent=True代表Flask不关心该环境变量键值是否存在

@app.route('/')
def index():
    return 'This is index'
此处route修饰器把一个函数绑定到一个URL上,@app.route('hello'),这个意思就是http://127.0.0.1/hello

@app.route('/user<username>')

def show_user(username):

  return 'My name is %s'%username

此处route中<username>代表一个参数,在地址栏中输入http://127.0.0.1/user/Sky,网页则会返回My name is Sky

from flask import url_for

@app.route('/login')

def index():return '这是一个新的url'

print url_for('login')

此处url_for()来针对一个特定的函数构建一个 URL,在时运行则会print出所构造好的地址地址栏中输入http://127.0.0.1/login即可访问
为什么你要构建 URLs 而不是在模版中硬编码?这里有三个好的理由:
   1. 反向构建通常比硬编码更具备描述性。更重要的是,它允许你一次性修改 URL, 而不是到处找 URL 修改。
   2.构建 URL 能够显式地处理特殊字符和Unicode转义,因此你不必去处理这些。
   3.如果你的应用不在 URL 根目录下(比如,在 /myapplication 而不在 /),url_for()将会适当地替你处理好。

放置静态文件时给静态文件生成URL

url_for('static',filename='style.css')

这个文件是应该存储在文件系统上的static/style.css

渲染文件

from flask import render_template

@app.route('/hello/')

@app.route('/hello<name>')

def hello(name=None):

  return render_template('hello.html',name=name)

此处将会从templates处查找模版文件hello.html

请求对象

from flask import request

request.method==['GET','POST']

文件上传

在HTML表单中设置属性enctype="multipart/form-data",否则浏览器不会传送文件

from flask import request

@app.route('/upload',methods=['GET','POST'])

def upload_file():

  if request.method=='POST'

  f=request.files['file']

  f.save('/uploads'+secure_filename(f.filename))      因为客户端的名称可能会被伪造,所以永远不要相信,传递给secure_filename来打到效果

COOKIE操作

读取cookie:

  username=request.cookies.get('username')

存储cookie:

  from flask import make_response,render_template

  loadc=make_response(render_template())

  loadc.set_cookie('usernmae','the username')

重定向

错误重定向

如果出现出错的话可以定义一个装饰器

@app.errorhandler(404)    代表没有该文件

def page_not_found(error):

  return render_tamplater('**.html'),404      此处404是在render_tamplate调用,告诉Flask该页的错误代码是404

未完待续...

Python之Flask笔记的更多相关文章

  1. 【Python】Flask系列-URL和视图笔记

    1.学习目标 熟悉Flask相关知识. 熟悉web开发流程. 能独立开发Flask项目. 2.环境配置 Python虚拟环境安装 因为python的框架更新迭代太快了,有时候需要在电脑上存在一个框架的 ...

  2. Python Click 学习笔记(转)

    原文链接:Python Click 学习笔记 Click 是 Flask 的团队 pallets 开发的优秀开源项目,它为命令行工具的开发封装了大量方法,使开发者只需要专注于功能实现.恰好我最近在开发 ...

  3. Flask笔记1

    Flask笔记 首先明确一下,要运行一个动态网页,我们需要 一个 Web 服务器来监听并响应请求,如果请求的是静态文件它就直接将其返回,如果是动态 url 它就将请求转交给 Web 应用. 一个 We ...

  4. 使用python的Flask实现一个RESTful API服务器端[翻译]

    最近这些年,REST已经成为web services和APIs的标准架构,很多APP的架构基本上是使用RESTful的形式了. 本文将会使用python的Flask框架轻松实现一个RESTful的服务 ...

  5. 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL

    周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...

  6. 《简明python教程》笔记一

    读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info  安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...

  7. python 正则使用笔记

    python正则使用笔记 def remove_br(content): """去除两边换行符""" content = content.r ...

  8. python核心编程--笔记

    python核心编程--笔记 的解释器options: 1.1 –d   提供调试输出 1.2 –O   生成优化的字节码(生成.pyo文件) 1.3 –S   不导入site模块以在启动时查找pyt ...

  9. 使用python的Flask实现一个RESTful API服务器端

    使用python的Flask实现一个RESTful API服务器端 最近这些年,REST已经成为web services和APIs的标准架构,很多APP的架构基本上是使用RESTful的形式了. 本文 ...

随机推荐

  1. 编程经验点滴----在 Oracle 数据库中保存空字符串

    写程序这么多年,近几天才发现,向 Oracle 数据库表中,保存空字符串 '' ,结果成了 null. 由于数据库数值 null 的比较.判断,与空字符串 '' 存在差异.一不留神,代码中留下了 bu ...

  2. hadoop,spark,Zookeeper,,, 这些名字都是怎么来的呢?

    Apache 首先我们要明白,Apache 是一个 http 服务器,而我们熟悉的另一种说法"Apache Hadoop"中的 Apache 则指的是 Apache 软件基金会.& ...

  3. Scala路径依赖【内部类】

    package big.data.analyse.scala.path_dependence /** * 路径依赖 * Created by zhen on 2018/12/24. */ // 定义外 ...

  4. [翻译]LVM中逻辑卷的最大大小限制

    前言: 本文是对这篇博客Maximum Size Of A Logical Volume In LVM的翻译,敬请尊重原创和翻译劳动成果,那些随意转载的大爷们,好歹也自觉注明出处.谢谢! 英文原文地址 ...

  5. html留言功能

    <!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...

  6. 数据库之mysql篇(5)—— 【转载】mysql练习题

    原帖地址:http://www.cnblogs.com/wupeiqi/articles/5748496.html 范例数据sql: /* Navicat Premium Data Transfer ...

  7. 老K漫谈区块链的共识(1)——免信任的共识机制

    老k,柏链道捷CTO.清华阿尔山区块链研究中心高级工程师,超过17年的系统软件开发经验,在操作系统.编译器.虚拟机和符号执行方面都有实战经验.主持开发多个开眼项目,目前主要从事区块链底层系统开发工作. ...

  8. Python操作字典(dict)

    一.字典定义 >>> dict={} 二.字典元素添加 >>> dict['性别']='男' >>> dict {'性别': '男'} >& ...

  9. RHEL/Centos7 安装图形化桌面

    Linux是一个多任务的多用户的操作系统,好多linux爱好者在安装完linux后经常遇到一个问题——没有图形化桌面.今天小编在安装RHEL7的时候,一步留神没有安装图形化桌面,下面分享一下安装图形化 ...

  10. 网站出现403 Forbidden

    1, 你在一定时间内过多地访问此网站(一般是用采集程序),被防火墙拒绝访问了 2, 网站域名解析到了空间,但空间未绑定此域名 3, 你的网页脚本文件在当前目录下没有执行权限 4, 服务器繁忙,同一IP ...