![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
flask项目学习
flask框架基础知识,做项目前必须知道的东西
慢羊羊6379.*?
有问题私信我,如果有项目或者设计也欢迎沟通
展开
-
Flask框架一:flask介绍及入门
1、项目的运行环境(虚拟环境)1.1为什么要部署虚拟环境原因:工作上的项目环境都是部署在虚拟环境中的,如果用Django写了个网站,然后你的领导跟你说,之前有一个旧项目是用flask开发的,让你来维护,但是Django可能和flask有些第三方库的版本不兼容。那么如何让电脑中同时拥有两套环境各自版本各自控制呢?这时候我们就可以通过虚拟环境来实现同时拥有Django和flask两套环境解决这个问题。定义:包含在系统环境之下的,防止不兼容,互不干扰的各自独立的干净的环境。1.2如何部署虚拟环境①不同的原创 2020-10-11 15:23:28 · 733 阅读 · 2 评论 -
Flask框架二:flask视图和模板
1、构造URL(url_for)原创 2020-10-13 22:58:34 · 344 阅读 · 2 评论 -
Flask框架三:flask模版的详细介绍
1、jinja2模版过滤器{{想要过滤的对象|使用的是什么过滤方法}}例如{{name|length}}:将返回字符串的长度,而jinja2的过滤器就相当于是定义了很类似于length这样的函数,我们可以根据这些函数的特定功能来过滤出自己想要的数据。1⃣️abs...原创 2020-10-18 16:38:19 · 427 阅读 · 2 评论 -
Flask框架四:模板继承以及豆瓣案例
1、模板继承①为什么会有模板继承而不用include调用模板:include是引用模板的标签,将模板的内容直接显示,但是当页面有变化的时候,比如多了一个侧边栏的内容,或者想改输入框为按钮,这时候就要去改模板或者创建多个include文件,为了简化代码提高代码复用性,模板继承就应运而生,和类的继承一样,可以重写父模板的方法②子模版只能通过block继承和重写父模板的内容,block可以嵌套使用,但是block的名字一定不能重复,接下来以父、子模板,以及引用模块举例在flask中如何使用模板继承③父模板(原创 2020-10-20 23:31:24 · 317 阅读 · 0 评论 -
Flask框架五:高级视图
1、类视图1.1映射转换方式除了@route(’/’)给函数添加装饰器映射路由外,还可以通过app.add_url_rule(’/’,view_func=func)来映射,类视图就要用add_url_rule来注册映射from flask import Flask,url_forapp = Flask(__name__)@app.route('/')def index1(): print(url_for('hanshu')) # 也可以在add_url_rule中通过endpoint定义函数名原创 2020-10-24 11:00:08 · 278 阅读 · 0 评论 -
Flask框架六:Flask操作MySQL数据库
1、SQL AIchemy介绍python可以使用很多数据库,MySQL、MongoDB、SQLite、PostgreSQL,redis、mongo等,以MySQL为例(只需要会它的安装和连接以及基本使用就可以在flask中运用详情点击查看),除了用SQL语句操作数据库外,在flask中可以使用ORM来操作数据库,使用ORM操作数据库会很便捷1.1使用环境①MySQL:通过安装phpstudy集成环境开启MySQL服务,点击查看②PyMySQL:它是python用来操作MySQL的包,通过pip i原创 2020-10-25 15:03:05 · 1280 阅读 · 0 评论 -
Flask框架七:ORM操作MySQL(一)
1、ORM基础操作注意点:①创建新表时必须写Base.metadata.create_all(),数据库中已存在这张表就可以不写(写了不会报错),代表将创建的(类)表映射到数据库中,如果数据库中已经存在这个表了,则不会改变表结构,如果后续操作有冲突则会报错(比如添加一个表中不存在的字段记录),如果没冲突则会往已存在的表里面做操作②写入数据库中的流程类似于git,先add在commit,要通过实例sessionmaker在调用它的实例化对象使用,为什么这么用具体看代码注释③通过实例化创建的类可以添加想原创 2020-10-29 11:44:26 · 453 阅读 · 0 评论 -
Flask框架八:ORM操作MySQL(二)
1、外键以及它的四种约束①前提:只有innodb数据库才支持外键,如果是myisam引擎它是在MySQL5.5之前默认的引擎不支持事务以及外键,是无法切换外键的,可以通过修改配置文件改变创建的默认引擎,点击查看详情②使用:SQL alchemy也支持创建外键,通过ForeignKey来实现from sqlalchemy import create_enginefrom sqlalchemy.ext.declarative import declarative_basefrom sqlalchemy原创 2020-11-03 19:37:14 · 214 阅读 · 0 评论 -
Flask框架九:Flask-SQLAlchemy插件
1、Flask-SQLAlchemy插件的介绍定义:它是对sqlalchemy进行的简单封装,使得在flask中使用sqlalchemy的时候更加的方便安装:通过pipenv shell进入虚拟环境然后pip install flask-sqlalchemy安装原创 2020-11-07 09:28:46 · 373 阅读 · 0 评论 -
Flask框架十:Flask终章与补充(首)
1、WTForms的表单验证form表单验证的类型有多种,邮箱、年龄、是否为空等多种验证,以及验证码等验证,WTForms都提供了相关的验证模块①创建一个froms模块,将想要验证的视图模块中的内容写在类里面from wtforms import FormField,StringField,Form,IntegerFieldfrom wtforms.validators import Length,EqualTo,Email,NumberRange,InputRequiredfrom wtform原创 2020-11-08 21:32:16 · 208 阅读 · 2 评论 -
Flask框架十一:Flask终章与补充(尾)
1、Flask的上下文flask上下文请求就是当一个flask项目被多次请求的时候,为了保证用户请求的隔离性,知道是谁发送的请求数据,Flask项目中有两个上下文,一个是应用上下文(app),另外一个是请求上下文(request)。请求上下文request和应用上下文current_app都是一个全局变量。所有请求都共享的。Flask有特殊的机制可以保证每次请求的数据都是隔离的,即A请求所产生的数据不会影响到B请求。所以可以直接导入request对象,也不会被一些脏数据影响了,并且不需要在每个函数中使原创 2020-11-09 22:31:49 · 223 阅读 · 0 评论