zoukankan      html  css  js  c++  java
  • 3.Flask-SQLAlchemy

     (1)安装

    pip install flask_sqlalchemy

    (2)数据库连接

    from flask import Flask
    # 1.导入
    from flask_sqlalchemy import SQLAlchemy
    
    app = Flask(__name__)
    #2.定义要连接的数据库
    DB_URI = "mysql+pymysql://root:123456@127.0.0.1:3306/learn_sqlalchemy?charset=utf8"
    #3.添加到到配置中
    app.config['SQLALCHEMY_DATABASE_URI'] = DB_URI
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] =False
    # 4.实例化一个对象,将app传进去 db = SQLAlchemy(app) @app.route('/') def hello_world(): return 'Hello World!' if __name__ == '__main__': app.run()

    (3)创建表

    from flask import Flask
    from flask_sqlalchemy import SQLAlchemy
    
    app = Flask(__name__)
    DB_URI = "mysql+pymysql://root:123456@127.0.0.1:3306/learn_sqlalchemy?charset=utf8"
    app.config['SQLALCHEMY_DATABASE_URI'] = DB_URI
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
    db = SQLAlchemy(app)
    
    class User(db.Model):
        __tablename__ = 'user'
        id = db.Column(db.Integer,primary_key=True,autoincrement=True)
        username = db.Column(db.String(50),nullable=False)
    
    
    class Article(db.Model):
        __tablename__ = "article"
        id = db.Column(db.Integer, primary_key=True, autoincrement=True)
        title = db.Column(db.String(50), nullable=False)
        uid = db.Column(db.Integer,db.ForeignKey("user.id"))
        author = db.relationship("User",backref='article')
    
    db.drop_all()         #删除表
    db.create_all()       #创建表
    
    
    @app.route('/')
    def hello_world():
        return 'Hello World!'
    
    if __name__ == '__main__':
        app.run()

     (4)添加数据

    from flask import Flask
    from flask_sqlalchemy import SQLAlchemy
    
    app = Flask(__name__)
    DB_URI = "mysql+pymysql://root:123456@127.0.0.1:3306/learn_sqlalchemy?charset=utf8"
    app.config['SQLALCHEMY_DATABASE_URI'] = DB_URI
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
    db = SQLAlchemy(app)
    
    class User(db.Model):
        __tablename__ = 'user'
        id = db.Column(db.Integer,primary_key=True,autoincrement=True)
        username = db.Column(db.String(50),nullable=False)
    
    
    class Article(db.Model):
        __tablename__ = "article"
        id = db.Column(db.Integer, primary_key=True, autoincrement=True)
        title = db.Column(db.String(50), nullable=False)
        uid = db.Column(db.Integer,db.ForeignKey("user.id"))
        author = db.relationship("User",backref='article')
    
    # db.drop_all()         #删除表
    # db.create_all()       #创建表
    
    #添加数据
    user = User(username='derek')
    article = Article(title='今天5/27号')
    article.author = user
    
    db.session.add(article)
    db.session.commit()
    
    
    @app.route('/')
    def hello_world():
        return 'Hello World!'
    
    if __name__ == '__main__':
        app.run()

     (5)查看、修改和删除

    from flask import Flask
    from flask_sqlalchemy import SQLAlchemy
    
    app = Flask(__name__)
    DB_URI = "mysql+pymysql://root:123456@127.0.0.1:3306/learn_sqlalchemy?charset=utf8"
    app.config['SQLALCHEMY_DATABASE_URI'] = DB_URI
    app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
    db = SQLAlchemy(app)
    
    class User(db.Model):
        __tablename__ = 'user'
        id = db.Column(db.Integer,primary_key=True,autoincrement=True)
        username = db.Column(db.String(50),nullable=False)
    
        def __repr__(self):
            return "<username:%s>"%self.username
    
    class Article(db.Model):
        __tablename__ = "article"
        id = db.Column(db.Integer, primary_key=True, autoincrement=True)
        title = db.Column(db.String(50), nullable=False)
        uid = db.Column(db.Integer,db.ForeignKey("user.id"))
        author = db.relationship("User",backref='article')
    
    # db.drop_all()         #删除表
    # db.create_all()       #创建表
    
    # 1.添加数据
    # user = User(username='derek')
    # article = Article(title='今天5/27号')
    # article.author = user
    #
    # db.session.add(article)
    # db.session.commit()
    
    # 2.查询数据
    # users=User.query.all()
    # print(users)
    
    # 3.修改数据,先查找出来再修改
    # user = User.query.filter(User.username=='derek').first()
    # user.username = 'jack'
    # db.session.commit()
    
    # 4.删除数据
    user = User.query.filter(User.username=='jack').first()
    db.session.delete(user)
    db.session.commit()
    
    @app.route('/')
    def hello_world():
        return 'Hello World!'
    
    if __name__ == '__main__':
        app.run()
  • 相关阅读:
    在一个页面用Ajax访问另一个页面弹出询问框怎么办
    还有一张呢
    系统相关信息查看
    linux dd 命令使用说明
    Github 使用说明
    Hadoop HA 资料
    fedora 在virtualbox安装guest additions
    git 使用记录
    linux console 小技巧
    Agent admitted failure to sign using the key 错误及解决方法
  • 原文地址:https://www.cnblogs.com/derek1184405959/p/9095506.html
Copyright © 2011-2022 走看看