zoukankan      html  css  js  c++  java
  • flask-sqlalchemy

    一、安装

    pip3 install -i https://pypi.douban.com/simple flask-sqlalchemy

    二、使用(文件结构blueprint)

    1、__init__.py

    # 导入并实例化SQLAlchemy
    from flask_sqlalchemy import SQLAlchemy
    db = SQLAlchemy()

    注意:a.SQLAlchemy的实例化必须在导入蓝图之前

          b.必须导入models.py --->储存ORM类

    2、models.py

    a.导入db

    b.类必须继承db.Model

    3、__init__.py中的create_app()方法中初始化

    db.init_app(app)

    4、在配置文件中配置文件settings.py

    SQLALCHEMY_DATABASE_URI = "mysql+pymysql://root:密码@127.0.0.1:3306/数据库?charset=utf8"
    SQLALCHEMY_POOL_SIZE = 10
    SQLALCHEMY_MAX_OVERFLOW = 5
    SQLALCHEMY_TRACK_MODIFICATIONS = False

    5、models.py

    from sqlalchemy import Column
    from sqlalchemy import Integer,String
    from sqlalchemy import create_engine
    from chun import db
    
    
    class Users(db.Model):
        __tablename__ = 'users'
    
        id = Column(Integer, primary_key=True)
        name = Column(String(32), index=True, nullable=False)
        depart_id = Column(Integer)

    6、生成表(app上下文) 忽略,可以通过数据库迁移进行

    离线脚本文件

    from 项目名称 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中获取配置

    7、基于ORM的数据操作

    使用的是threding.local

    from flask import Blueprint
    from 项目名称 import db
    from 项目名称 import models
    ind = Blueprint('ind',__name__)
    
    
    @ind.route('/index')
    def index():
        # 使用SQLAlchemy在数据库中插入一条数据
        # db.session.add(models.Users(name='xx',depart_id=1))
        # db.session.commit()
        # db.session.remove()
        # 查看数据
        result = db.session.query(models.Users).all()
        print(result)
        db.session.remove()
    
        return 'Index'
  • 相关阅读:
    网络爬虫(抓取)正则表达式 (多线程协作)
    Asp.net 主题
    Asp.net 菜单控件
    CSS 布局Float 【4】
    CSS 布局Float 【3】
    CSS 布局Float 【2】
    CSS 布局Float 【1】
    CSS 布局Float 【0】
    Asp.Net 母版页
    Sql Server 远程过程调用失败
  • 原文地址:https://www.cnblogs.com/wt7018/p/11618756.html
Copyright © 2011-2022 走看看