小编给大家分享一下python框架中瓶的知识点有哪些,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!
一、瓶蓝图目录
我们之前写的瓶项目都是自己组织的目录结构,其实瓶官方有其推荐的目录结构,以下就是一个符合官方推荐的瓶小型应用的项目结构目录示例,如下:
得到flask import 瓶 得到.views.acc import  acc_bp 得到.views.user import  user_bp def create_app (): ,,,my_app =,瓶(__name__) ,,,my_app.register_blueprint (acc_bp) ,,,my_app.register_blueprint (user_bp) ,,,return my_app app/__init__ . py
<代码> __init__ . py> 代码就是构建的应用程序的一个函数,并且将视图中的蓝图注册进去了。
接下来看静态目录,这个目录从字面意思就可以理解了,是我们的静态静态文件存放目录。
然后就是模板目录,即模板存放目录。
视图目录,主角终于登场了,这里存放的就是视图函数文件,也就是我们<代码>蓝图> 代码,每一个文件就是一个蓝图,如下:
<代码>/acc的看法。py 代码>
得到flask import 蓝图 时间=acc_bp 蓝图(& # 39;acc # 39;,, __name__) @acc_bp.route (“/acc") def accfunc (): ,,,return “my_app.acc" 视图/acc.py
<代码>视图/用户。py 代码>
得到flask import 蓝图 时间=user_bp 蓝图(& # 39;用户# 39;,,__name__) @user_bp.route (“/login") def 用户_ (): ,,,return “my_app.user" 视图/user.py
接下来就是关键性的一个文件manager.py,项目的启动文件,内容如下:
<代码>经理。py 代码>
得到app import create_app 时间=my_app create_app () if __name__ ==, & # 39; __main__ # 39;: ,,,my_app.run () 经理。py
二,Flask-SQLAlchemy
1,安装
pip install Flask-SQLAlchemy
2,接下来基于上面的瓶项目,我们要加入Flask-SQLAlchemy让项目变得生动起来
2.1加入Flask-SQLAlchemy第三方组件
<代码> app/__init__。py 代码>
得到flask import 瓶 得到flask_sqlalchemy import  SQLAlchemy ,,, #,导入Flask-SQLAlchemy中的SQLAlchemy 时间=db SQLAlchemy(),,, #,实例化SQLAlchemy #,注意:实例化SQLAlchemy的代码必须要在引入蓝图之前 #,引入蓝图 得到.views.acc import  acc_bp 得到.views.user import  user_bp def create_app (): ,,,my_app =,瓶(__name__) ,,,#,初始化应用配置,专门针对SQLAlchemy 进行配置 ,,,my_app.config [“SQLALCHEMY_DATABASE_URI"],=,“mysql + pymysql://根:@127.0.0.1:3306/你? charset=utf8" ,,,my_app.config [“SQLALCHEMY_POOL_SIZE"],=, 5,,,, #, SQLAlchemy的连接池大小 ,,,my_app.config [“SQLALCHEMY_POOL_TIMEOUT"],=, 15,,, #, SQLAlchemy的连接超时时间 ,,,my_app.config [“SQLALCHEMY_TRACK_MODIFICATIONS"],=,假的 ,,,db.init_app (my_app),, #,初始化SQLAlchemy ,,本质就是将以上的配置读取出来 ,,,my_app.register_blueprint (acc_bp) ,,,my_app.register_blueprint (user_bp) ,,,return my_app app/__init__ . py
2.2在应用目录下建立models.py (ORM模型文件)
应用程序/模型。py
得到app import db #,得到sqlalchemy.ext.declarative import  declarative_base=#,Base declarative_base () #,之前我们在创建数据表的时候都要做这样一件事,然而Flask-SQLAlchemy已经为我们把,Base 封装好了,即db.Model #,建立用户数据表 class 用户(db.Model): ,,,__tablename__ =, & # 39;用户# 39; ,,,#,__table_args__ =, {“useexisting":真正的} ,,,#,Flask-SQLAlchemy 也为我们封装好了列,整数、字符串等 ,,,id =, db.Column (db.Integer, primary_key=True) ,,,name =, db.Column (db.String (32) ,,,password =, db.Column (db.String (32) if __name__ ==, & # 39; __main__ # 39;: ,才能得到app import create_app ,,,my_app =, create_app () ,,,#,这里你要回顾一下瓶应用上下文管理了 ,,,#,离线脚本: ,,,with my_app.app_context (): ,,,,,,,db.drop_all(),,,,,,,, #,删除所有表 ,,,,,,,db.create_all(),,,,,, #,创建表 app/models.pypython框架中瓶的知识点有哪些