网站开发支付宝,做网站后台需要什么,wordpress火车头发布模块,产品推广软文笔记
Flask
Flask 本身相当于一个内核#xff0c;其他几乎所有的功能都要用到扩展#xff08;邮件扩展Flask-Mail#xff0c;用户认证Flask-Login#xff0c;数据库Flask-SQLAlchemy#xff09;#xff0c;都需要用第三方的扩展来实现。比如可以用 Flask 扩展加入ORM、…笔记
Flask
Flask 本身相当于一个内核其他几乎所有的功能都要用到扩展邮件扩展Flask-Mail用户认证Flask-Login数据库Flask-SQLAlchemy都需要用第三方的扩展来实现。比如可以用 Flask 扩展加入ORM、窗体验证工具文件上传、身份验证等。Flask 没有默认使用的数据库可以选择 MySQL也可以用 NoSQL。
flask的 WSGI 工具箱采用 Werkzeug路由模块模板引擎则使用 Jinja2。Itsdangroustoken加密模块Click(终端命令管理工具)flask内核本身这5个核心模块组成 Flask 框架。
官网: Welcome to Flask — Flask Documentation (2.0.x)
官方文档: https://dormousehole.readthedocs.io/en/latest/index.html
Flask常用第三方扩展包
Flask-SQLAlchemy操作数据库,ORMFlask-script终端脚本工具脚手架 ( 淘汰官方内置脚手架Click)Flask-migrate管理迁移数据库Flask-SessionSession存储方式指定Flask-Mail邮件Flask-Login认证用户状态django内置Auth模块用于实现用户登录退出Flask-OpenID认证, OAuth三方授权Flask-RESTful开发REST API的工具Flask JSON-RPC: 开发json-rpc远程服务[过程]调用Flask-Bable提供国际化和本地化支持翻译Flask-Moment本地化日期和时间Flask-Admin简单而可扩展的管理接口的框架Flask-Bootstrap集成前端Twitter Bootstrap框架前后端分离Flask-WTF表单生成模块前后端分离Flask-Marshmallow序列化类似djangorestframework的序列化器
创建flask项目 安装flask pip install flask -i https://pypi.douban.com/simple 也可以在python解释器那里安装flask软件包 出现这个应该只是权限不够 pip install --user name of pkg 加个权限应该就好了不然就还是在解释器安装flask包 pip安装库出现 Could not install packages due to an OSError: [WinError 5] 拒绝访问_安装pgspecial库报错:oserror-CSDN博客 与django不同,flask不会提供任何的自动操作所以需要手动创建项目目录,需要手动创建启动项目的管理文件可以直接在目标文件夹下面创建一个py文件
# 导入Flask类
from flask import Flask
Flask类的实例化参数
import_name Flask程序所在的包(模块)传 __name__ 就可以其可以决定 Flask 在访问静态文件时查找的路径
static_path 静态文件存储访问路径(不推荐使用使用 static_url_path 代替)
static_url_path 静态文件的url访问路径可以不传默认为/ static_folder
static_folder 静态文件存储的文件夹可以不传默认为 static
template_folder 模板文件存储的文件夹可以不传默认为 templatesapp Flask(__name__)# 编写路由视图
# flask的路由是通过给视图添加装饰器的方式进行编写的。当然也可以分离到另一个文件中。
# flask的视图函数flask中默认允许通过return返回html格式数据给客户端。
app.route(/)
def index():# 返回值如果是字符串被自动作为参数传递给response对象进行实例化返回客户端return h1hello flask/h1# 指定服务器IP和端口
if __name__ __main__:# 运行flaskapp.run(host0.0.0.0, port5000, debugTrue)
运行代码出现下面的形式就是ok了 这里有一个warning是因为在开发环境中Flask应用程序是使用内置的服务器如SimpleServer或Lighttpd运行的而不是使用WSGI服务器。 具体如果想解决这个警告可以参考一键解决WARNING: This is a development server. Do not use it in a production deployment. Use a productio-CSDN博客 点击连接会跳转到浏览器出现下面的界面就是ok的了