Flask.3
Posted zbcdamao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask.3相关的知识,希望对你有一定的参考价值。
Flask四大内置对象
- request
- session
- g
- global 全局
- 帮助我们实现全局数据共享
- 生命周期:在单次请求中
- config 或者 app
- 就是当前运行的项目
- 获取当前运行的App的位置
- 应该是存在价值和意义的
钩子函数
-
-
OOP
-
面向对象编程
-
-
POP
-
面向过程编程
-
-
IOP
-
面向接口编程
-
-
AOP
-
面向切面编程
-
-
-
动态介入到既有流程中
-
重要概念
-
切点
-
请求前
-
请求后
-
请求异常
-
-
切面
-
请求前
-
request
-
-
请求后
-
request
-
response
-
-
请求异常
-
exception
-
request
-
-
-
-
Flask中就叫做钩子(切点)
-
蓝图和app上都有钩子函数
-
app上的钩子优先级更高
-
蓝图只能处理本蓝图内容的信息
缓存
-
-
实现
-
flask-cache
-
flask-caching
url_for
-
-
动态获取地址
-
url_for("视图函数名字" ) **一定是函数名字**
-
可以视图函数上的路由
-
带参
-
url_for("视图函数名字", key=value, key=value)
-
-
-
static
-
url_for("static", filename="xxx")
-
@app.route("/static/path:filename")
-
def static(filename):
-
-
在app中是以上所说
-
在蓝图中前面要拼接蓝图的名字
-
url_for("蓝图名.函数名")
-
users_blue = Blueprint("users_blue", __name__, url_prefix="/users") #举例 if user.save(): return redirect(url_for(‘users_blue.login‘)). #重定向到users_blue的login函数 else: return "注册失败"
模型
- 如果模型不想在数据库中产生映射
-
-
需要模型是抽象的
-
抽象的模型不会有具体的实例
-
__abstract__ =True
-
#定义一个基类函数,让其他函数继承自它 #但映射时还会产生这个函数对象的表,所以加上__abstract__ = True,变为抽象模型 class BaseModel(db.Model): __abstract__ = True id = db.Column(db.Integer, primary_key=True, autoincrement=True)
文件上传(图片)
-
-
需要打碎,然后再拼装
-
中间需要对应的规则
-
enctype
enctype="multipart/form-data"
以上是关于Flask.3的主要内容,如果未能解决你的问题,请参考以下文章