Flask web

1、使用web 框架优点:

稳定性和可扩展性强,降低开发难度,提高开发效率


2Flask

是轻量级web开发框架(只有两个核心部分:WSGI工具箱采用Werkzeug(路由模块),模版引擎使用Jinja2  ),最灵活的框架之一

扩展列表: http://flask.pocoo.org/extensions/ 

文档:http://docs.jinkan.org/docs/flask/

http://flask.pocoo.org/docs/flask


3Django Flask区别

Flask需要引用外表扩展


4、虚拟环境安装


1)查看是否安装虚拟环境

$ virtualenv --version


2)安装虚拟环境

$ sudo pip3 install virtualenv

$ sudo pip3 install virtualenvwrapper


3)创建虚拟环境(需要连网)

$ mkvirtualenv Flask_py


4)如果提升找不到mkvirtualenv 命令,配置环境变量

# 1.创建目录用来存放虚拟环境

mkdir $HOME/.virtualenvs


#2、打开vi ~/.bashrc或者 ~/.zshrc文件,并添加如下

export WORKON_HOME = $HOME/.virtualenvs

source /usr/local/bin/virtualwrapper.sh


VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python3 // 配置python3.0环境


#3、运行

source ~/.bashrc

source ~/.zshrc


5)进入虚拟环境

$ workon Flask_py


6)退出虚拟环境

$ deactivate Flask_py



5 、安装Flask

指定Flask版本安装

$ pip3 install flask==0.10.1

pip3 freeze > requirements.txt


Mac系统:

$ easy_install flask==0.10.1


ipython中测试安装是否成功

$ free flask import Flask


6requirements文件

便于迁移,记录所有依赖包及精确版本号,以便在新环境中进行部署操作( 发布到服务器)。

在虚拟环境使用以下命令将当前虚拟环境中的依赖包以版本号生产至文件中:

终端输入$ pip3 freeze >requirements.txt # 到处环境

$ pip3 list # 查看当前所有的环境

$ pip3 install -r requirements.txt # 拷贝requirements.txt文件到项目,再安装环境


7

8、

9Jinja2

注释:{# #}

传入的数组时,可以使用{{list.2}} {{ list[2]}}取第3个值

传入的字典时,可以使用{{dict.key}} {{dict[key]}}

定义控制代码块:{%  %}

for循环:

{%  for num in list %}

{{num}} <br>

{%  endfor %}


if条件判断:

{% if num > 3 %}

{{num}} <br>

{% endif %}



10.Jinja2过滤器

链式调用:{{ url_str | upper | reverse}}  

变大写:{{ url_str | upper }}  

title:把值中每个单词的首字母转成大写

lower:转小写

reverse:反转

format格式化输出 : {{ ‘%s is %d’ | format(‘name’, 17) }}

safe禁用转义:{{ ‘<em>hello</em>’ | safe}}

变量首字母大写,其余小写:{{ ‘hello’ | capitalize }}

渲染之前把值中所有的HTML标签都删掉:{{‘<em>hello</em>’ | striptags}}

truncate字符串截断:{{‘hello every one’ | truncate(9) }}


列表

取第一个值:{{ list | first }}

最后一个值:last

列表长度:length

求和:sum

排序:sort


语句块过滤:

{% filter upper %}


{% endfilter %}


11flask-WTF 

安装flask-wtf: pip3 install flask-wtf



12.Flask-SQLAlchemy扩展


安装fask-sqlalchemy

pip3 install flask-sqlalchemy

如果连接的是mysql数据库,需要安装mysqldb

pip3 install flask-mysqldb






Flask 的数据库设置:

app.config[‘SQLALCHEMY_DATABASE_URI’] = ‘mysql://root:[email protected]:3306/test'

其他设置:

app.config[‘SQLALCHEMY_TRACK_MODIFICATIONS’] = False #动态追踪修改设置

app.config[‘SQLALCHEMY_ECHO’] = True  #查询时会显示原始SQL


# mysql -h localhost -u root -p

# 输入密码

> create database test charset=utf8; #创建数据库


> show databases;

> use databases;

> show tables;

> select * from users;


> set password=password(“banyantoro"); #修改密码

> flush privileges; # 刷新权限

> help contents

> select Host,user,password from mysql.user \G; #查询用户名

> create database test; #创建数据库

> exit;



角色表 roles





id




name












用户表 users





id




name




role_id




role





From  Flask_Demo03 import *

    User.query.all() # 查询所有用户

    User.query.count() # 查询用户数

    User.query.first() # 第一个数据

    # 查询ID4的用户

    User.query.get(4)

    User.query.filter_by(id=4).first()

    User.query.filter(User.id==4).first()

    User.query.filter_by(id=4).first()



猜你喜欢

转载自blog.csdn.net/weixin_40873814/article/details/80252387