学习Python Flask Web框架

1.virtualenv

也许 Virtualenv 是你在开发中最愿意使用的,如果你在生产机器上有 shell 权限的时候,你也会愿意用上 Virtualenv。

virtualenv 解决了什么问题?如果你像我一样喜欢 Python 的话,有很多机会在基于 Flask 的 web 应用外的其它项目上使用 Python。 然而项目越多,越有可能在不同版本的 python,或者至少在不同 python 库的版本上工作。 我们需要面对这样的事实:库破坏向后兼容性的情况相当常见,而且零依赖的正式应用也不大可能存在。 如此,当你的项目中的两个或更多出现依赖性冲突,你会怎么做?

Virtualenv 的出现解决这一切!Virtualenv 能够允许多个不同版本的 Python 安装,每一个服务于各自的项目。 它实际上并没有安装独立的 Python 副本,只是提供了一种方式使得环境保持独立。让我们见识下 virtualenv 怎么工作的。

sudo easy_install virtualenv
sudo pip3 install -i http://mirrors.aliyuncs.com/pypi/simple virtualenv
//ubuntu
sudo apt-get install python-virtualenv 

一旦成功安装 virtualenv,运行 shell 创建自己的环境。我通常会创建一个项目文件夹myproject,其下创建 venv 文件夹,该文件夹就是一个虚拟的 Python 环境,同样的,我们可以使用 -p 参数来改变 python 的版本,默认情况下,virtualenv 会优先选取它的宿主 python 环境.

$ mkdir myproject
$ cd myproject
$ virtualenv -p /usr/bin/python3 venv
New python executable in venv/bin/python
Installing distribute............done.

学习Python Flask Web框架
学习Python Flask Web框架
我通常是使用anaconda
学习Python Flask Web框架
进入虚拟环境
学习Python Flask Web框架

2.最小的应用

学习Python Flask Web框架
学习Python Flask Web框架

debug

学习Python Flask Web框架

3.静态文件

URL

https://baike.baidu.com/item/url/110640?fr=aladdin 这个就是一个URl
url是统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它

静态文件

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

你可以使用方法render_template()来渲染模版。所有你需要做的就是提供模版的名称以及你想要作为关键字参数传入模板的变量。

from flask import render_template

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

学习Python Flask Web框架
静态文件放在 static目录中,模板文件放在templates目录下。

接受请求数据

在 Flask 中由全局对象request来提供这些信息。如果你有一定的 Python 经验,你会好奇这个对象怎么可能是全局的,并且 Flask 是怎么还能保证线程安全。 答案是上下文作用域。
学习Python Flask Web框架
学习Python Flask Web框架

文件上传

学习Python Flask Web框架