今天上午搜了一下Flask的学习教程,发现了一个较好的教程。
网址(不给我直接插入连接,那就换个命令语句样式吧):
https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-world
不过是英文的网站,这个是作者通过博客连载的方式展示。所以,每页的前边几段都是重复的,是教程的目录、一些下载说明及下载链接。
在读英文文章,自然会遇到一些生词了,尤其是这种专业词汇。自然少不了翻译工具。我推荐大家一个在线翻译的网站:
(不给我直接插入连接,那就换个命令语句样式吧)
http://www.scidict.org/it/itindex.aspx?word=workaround
可以专门查询信息技术类的专业词汇。
第一章
先申明,这文章不是全文翻译,我只把一些重点记录下来,我在windows系统下使用的是Python3,通过anaconda安装的。):
1、 安装python
这个略过了,建议使用anaconda安装,毕竟可以省略很多包的安装。
2 、安装Flask
由于Python版本在不断更新,尤其2版本跟3版本差异还是大的。为了避免这种差异性,可以通过构建一个虚拟环境(实际就是一个文件夹)来独立开发。
2.1 首先为我们的微博应用建立一个的根目录:
mkdir microblog #先用cd切换到你需要的路径,然后用此语句创建目录
2.2 建立虚拟环境并安装flask:
切换到新建的根目录microblog,建立虚拟环境。
cd microblog #切换到microblog路径下
python -m venv venv #建立虚拟环境,就会在microblog下新建了一个文件夹venv
cd venv\Scripts #切换到新建的venv文件夹下的Scripts文件夹路径
venv\Scripts>activate #在Scripts文件夹路径下输入activate 即表示激活此虚拟环境
pip install flask #在此虚拟环境下安装 flask
3 、Flask应用——Hello, World
3.1 建立app包:
返回到microblog文件夹路径下,新建一个app文件夹,然后在此文件夹下新建一个 名为__init__.py的文件,代码如下:
app/init.py:
from flask import Flask
#此app是一个变量,引用Flask实例
app = Flask(__name__) #__name__是系统预定义的变量,传递的是正在导入引用的模块的名字,此处就是app
from app import routes #routes是app包下的另一个模块
Tip:1、init.py 文件的作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件。
2、通常__init__.py 文件为空,但是我们还可以为它增加其他的功能。我们在导入一个包时,实际上是导入了它的__init__.py文件。这样我们可以在__init__.py文件中批量导入我们所需要的模块,而不再需要一个一个的导入——类似于一个接口文件。
3、不同路径下的import操作方法:
import sys
sys.path.append("..") #当前py文件路径向上一层级转变
4、不同应用方式:
a、from package import module [as alia]
b、from package.module import attritude
3.2在app包下新建一个routes.py模块:
#from app将会激活__init__模块中的调用(from flask import Flask)
from app import app
@app.route('/')
@app.route('/index') #@app.route是一个装饰器,通过此装饰器可以调用index函数,并把结果回传给‘/’或者‘/index’网页地址
def index():
return "Hello, World!"
3.3在根目录下,建立一个名为microblog.py的主程序(关联Flask实例):
把这个文件放在根目录,也是为了方便引用(跟app包在同一层级,否则还得用sys模块修改路径)
from app import app
3.4到此,我们将建立了一个如下树形结构的文件树:
microblog/
+venv/
+app/
__init__.py
routes.py
microblog.py
3.5 运行体验app效果
前期的基础工作已完成,让我们体验一下最简单的网页效果吧。
这里请注意,在按书中例子运行语句的时候,
请确认你切换到了microblog路径下。
>set FLASK_APP=microblog.py
>flask run
启动好服务后,在浏览器中输入: http://localhost:5000/ 或者http://localhost:5000/index,
就可以看到结果了:hello,world!
3.6 在Pycharm中设置后直接运行程序(可省略3.5步)
Flask文档中的pycharm-integration网址如下:
http://flask.pocoo.org/docs/dev/cli/#pycharm-integration
具体的设置界面: