十六 .Flask 基本项目目录搭建 和 pipreqs 模块(组件和模块版本) virtualenv 模块 (创建虚拟环境)
一 .目录搭建
https://www.cnblogs.com/wupeiqi/p/7552008.html
https://github.com/Suger-supreme/flask_dir 目录结构
应用到
配置文件 写入
sqlalchemy 数据库连接使用
蓝图
models
配置flask运行命令 python manage.py runserver
配置Flask数据库迁移
依赖的组件库 Flask_SQLAlchemy==2.4.1 redis==3.3.11 SQLAlchemy==1.3.10 Flask_Session==0.3.1 Flask_Migrate==2.5.2 Flask==1.1.1 Flask_Script==2.0.6 alembic==1.2.1 第一步: pip install Flask-sqlalchemy 第二部: 导入 并且实例化 from flask_sqlalchemy import SQLAlchemy db = SQLAlchemy() # 实例化SQLAlchemy 里面封装了数据库连接等 注意:必须在导入蓝图的上面 必须导入models.py 第三部: 初始化 db.init_app(app) # 注册 SQLAlchemy 读取配置文件 第四步: 配置文件中写入配置 sqlalchemy 配置文件 SQLALCHEMY_DATABASE_URI = "mysql+pymysql://root:root@127.0.0.1:3306/mydb5?charset=utf8" SQLALCHEMY_POOL_SIZE = 10 SQLALCHEMY_MAX_OVERFLOW = 5 SQLALCHEMY_TRACK_MODIFICATIONS = False 第五部: 创建models class User(db.Model): __tablename__ = 'users' id = Column(Integer, primary_key=True) name = Column(String(32), index=True, nullable=False) 第六步: 生成表 (用到了app上下文管理) 导入它 并且实例化上下文 from supflask import db,create_app app = create_app() app_ctx = app.app_context() # app_ctx = app/g with app_ctx: # __enter__,通过LocalStack放入Local中 db.create_all() # 调用LocalStack放入Local中获取app,再去app中获取配置 第七步: 使用用 sqlalchemy 插入数据操等(orm操作等) db.session.add(models.User(name='张三三废')) db.session.commit() db.session.remove()
1. pip install flask-script 生成命令 a.功能 : 增加 python manage.py runserver from flask_script import Manager from supflask import create_app app = create_app() manager = Manager(app) # python manage.py runserver Migrate(app, db) if __name__ == '__main__': # app.run() manager.run() b. cmd 自定义命令(按照位置关键字传参) @manager.command def custom(arg): """ 自定义命令 python manage.py custom 123 :param arg: :return: """ print(arg) @manager.option('-n', '--name', dest='name') @manager.option('-u', '--url', dest='url') def cmd(name, url): """ 自定义命令 执行: python manage.py cmd -n litao -u http://baidu.com :param name: :param url: :return: """ print(name, url) 2.pip install flask-migrate 做数据库迁移 依赖: pip install flask-script from flask_migrate import Migrate, MigrateCommand manager.add_command('db', MigrateCommand) """ # 数据库迁移命名 python manage.py db init 初始化(只执行一次) python manage.py db migrate # makemirations python manage.py db upgrade # migrate """
2. pip install pipreqs 模块
3. 自动找到项目的所有组件和模块版本 pip install pipreqs(适用于django Flask 等) pipreqs ./ --encoding=utf-8 找到当前项目目录下的所有组件和依赖 H:\MyFlask> pipreqs ./ --encoding=utf-8
3. pip install virtualenv 模块
virtualenv------用来建立一个虚拟的python环境,一个专属于项目的python环境。用virtualenv 来保持一个干净的环境非常有用
生成虚拟环境
图文使用: