''' web框架: Flak 轻量级,灵活小巧,可以自己造轮子,适合开发web api Django 功能全,臃肿,不太灵活 Tornado 支持异步,IO性能优秀 ''' ''' MTV|MVT: M -- model 模型--》数据库 T -- temple 模板--》页面 V -- view 视图 + 路由route--》 '''
flask文档:https://dormousehole.readthedocs.io/en/latest/
目录
templates(开发中一般命名为templates,否则*)
5. 路由——url构建(url_for,endpoint)
6.2 flask请求对象(render_template,redirect)
1.搭建虚拟环境:
Linux:virtualenv virtualenvwrapper
下面着重介绍windows下的虚拟环境搭建过程:
-
在cmd下输入:pip install virtualenvwrapper-win
-
创建虚拟环境:mkvirtualenv 自定义虚拟环境名
-
查看当前存在的虚拟环境:在cmd下输入workon # 创建好的虚拟环境的位置就在:C:\Users\mico\Envs # 【注意本机的用户名不能是中文,否则需要重新配置Envs路径】 # 【或者不想要虚拟环境位置存在C盘的,也可以重新配置Envs路径】
- 重新配置Envs路径方法:
打开控制面板,找到环境变量,按照如下图进行操作:
此时,重新打开cmd再创建虚拟环境的时候,虚拟环境的位置就在所配置的位置
5. 修改项目的python解释器:
打开file-->setting,之后按照下图进行操作:
6. cmd下切换虚拟环境:workon 虚拟环境名
7. cmd下推出虚拟环境:deactivate
8. cmd下删除虚拟环境:rmvirtualenv 虚拟环境名
9.在pycharm中输入: pip install flask ,安装flask。
10. 紧接着可以查看当前项目下pip安装的包:pip list
2.创建flask项目
项目结构(红框是必须的):
static---静态文件
动态的 web 应用也需要静态文件,一般是 CSS 和 JavaScript 文件。理想情况下你的 服务器已经配置好了为你的提供静态文件的服务。但是在开发过程中, Flask 也能做好 这项工作。只要在你的包或模块旁边创建一个名为
static
的文件夹就行了。 静态文件位于应用的/static
中。使用特定的
'static'
端点就可以生成相应的 URLurl_for('static', filename='style.css')
这个静态文件在文件系统中的位置应该是
static/style.css
。templates(开发中一般命名为templates,否则*)
放置HTML文件
*如果模板命名不是默认的templates的时候,在创建flask对象时,需要声明模板名称:
app = Flask(__name__,template_folder='template') #当前文件的名字
from flask import Flask
# 创建一个该类的实例。第一个参数是应用模块或者包的名称。如果你使用 一个单一模块(就像本例),那么应当使用 __name__ ,因为名称会根据这个 模块是按应用方式使用还是作为一个模块导入而发生变化(可能是 ‘__main__’ , 也可能是实际导入的名称)。这个参数是必需的,这样 Flask 才能知道在哪里可以 找到模板和静态文件等东西。
app = Flask(__name__) #当前文件的名字
# 使用 route() 装饰器来告诉 Flask 触发函数的 URL
@app.route('/') # 注册路由
# 函数名称被用于生成相关联的 URL 。函数最后返回需要在用户浏览器中显示的信息。
def hello_world():
return 'HELLO hello world'
if __name__ == '__main__':
# 关联服务器并启动
# app.run(host='0.0.0.0', port=8000) # host默认是127.0.0.1,port默认是5000
# 0.0.0.0 是可以任何人访问你的项目的
app.run()
运行后:
可以看出上面运行结果显示的debug模式是关的,现在开启debug模式:
from flask import Flask
app = Flask(__name__) #当前文件的名字
@app.route('/') # 注册路由
def hello_world():
return 'HELLO hello world.'
if __name__ == '__main__':
# 1.关联服务器并启动
app.run(host='0.0.0.0', port=5000,debug=True) # host默认是127.0.0.1,port默认是5000
此时,在Terminal里面输入:python app.py,运行程序:
在浏览器打开页面:
然后,在代码中要返回给页面的内容中,添加内容:
from flask import Flask
app = Flask(__name__) #当前文件的名字
@app.route('/') # 注册路由
def hello_world():
return 'HELLO hello world.This is my first flask project'
if __name__ == '__main__':
# 1.关联服务器并启动
app.run(host='0.0.0.0', port=5000,debug=True) # host默认是127.0.0.1,port默认是5000
此时,刷新浏览器,可以看到无需重新运行程序,页面内容就会同步:
3. flask配置
为了方便,将配置信息单独放在一个配