• Flask-sqlacodegen之ORM操作


    Flask-sqlacodegen之ORM操作有两种方式:

    1.模型迁移到数据库中生成表(codefirst):

    需要flask-script:

    from flask_script import Manager
    from flask_migrate import Migrate ,MigrateCommand
    from flask import Flask
    
    app = Flask(__name__)
    manager = Manager(app)  # 注册App到脚本
    Migrate(app,db)         # 注册App和ORM对象
    manager.add_command('db',MigrateCommand)  # db为命令 即执行python manager.py db 命令

    代码中编写models.py后执行命令

    python app.py db init        #初始化
    python app.py db migrate #生成迁移脚本
    python app.py db upgrade #映射到数据库

    2.已经有建好的数据库及表,根据表反向生成model模型(dbfirst):

    安装相关扩展包:pymysql、flask-sqlacodegen

    pip install pymysql -i https://pypi.tuna.tsinghua.edu.cn/simple
    pip install flask-sqlacodegen -i https://pypi.tuna.tsinghua.edu.cn/simple

    使用window环境下:

    # 整体映射database数据库并写入model.py文件
    flask-sqlacodegen 
    mysql://username:password@127.0.0.1/database 
    --outfile 'model.py' 
    --flask
    
    # 映射table数据表并写入table.py文件
    flask-sqlacodegen 
    mysql://username:password@127.0.0.1/database 
    --table table 
    --outfile 'model.py' 
    --flask
    事例如下:
    第一步 flask
    -sqlacodegen mysql://root:123456@127.0.0.1:3306/pawnxc --outfile "models/model.py" --flask
    第二步
    #根据指定的表名,从数据库中反向成相应表 flask-sqlacodegen mysql://root:123456@127.0.0.1:3306/pawnxc --tables pawn_dl --outfile "models/dl.py" --flask #一次性从数据库中反向成所有表 flask-sqlacodegen mysql://root:123456@127.0.0.1:3306/pawnxc --outfile "models/model.py" --flask
    注:models/model.py————models下的model.py文件在代码执行后自动生成
  • 相关阅读:
    [转]SDRAM/DDR/DDR2/DDR3/DDR4
    Altera cyclone系列altlvds调试
    [转]关于Altera LVDS 经验分享
    [转]FPGA的GTP高速串行接口数据收发
    [转]ISE、vivado、QuartusII调用notepad++、UE汇总(整理)
    [转]vivado管脚分配:PACKAGE_PIN or LOC
    [转]如何使用WinDriver为PCIe采集卡装驱动
    【Docker系列教程之六】Docker的前世今生
    【Docker系列教程之五】如何构建Dockerfile
    【Docker系列教程之四】Dockerfile入门
  • 原文地址:https://www.cnblogs.com/hzjdpawn/p/12484792.html
Copyright © 2020-2023  润新知