第一个项目(一)简介

将py中列导入MySQL
demo目录下
==create_tables.py ==

from demo import db,create_app
from demo.models import *#导入models内部所有类

app = create_app()#创建flask对象
app_ctx = app.app_context()#实现上下文 连接数据库

with app_ctx:#打开连接 用完自动关闭 释放资源
    db.create_all()#连接数据库,创建models里面所有类

models.py

from demo import db
class User(db.Model):
    __tablename__ = 'user'
    id = db.Column(db.INTEGER, primary_key=True)
    username = db.Column(db.String(80),unique = True)
    password = db.Column(db.String(80),nullable = False)


init.py

from flask_sqlalchemy import SQLAlchemy
from flask import Flask

db = SQLAlchemy()#db是导入的连接数据库的库内类创建的对象

def create_app():
    app = Flask(__name__)
    app.config.from_object('settings')#从settings加载配置文件
    #config是属性 .from_object是一个方法 从settings里面加载全部东西 读到app
    db = SQLAlchemy()
    db.init_app(app)#初始化app
    #用app 里面读取的参数 初始化db 并返回app
    return app

与demo并列

manage.py

from demo import create_app

app = create_app()

if __name__ == '__main__':
    app.run()#启动程序

settings.py

DIALECT = 'mysql'
DRIVER = 'pymysql'
USERNAME = 'root'
PASSWORD = 'root'
HOST = 'localhost'
PORT = '3306'
DATABASE = 'gly'

SQLALCHEMY_DATABASE_URI = '{}+{}://{}:{}@{}:{}/{}?charset=utf8'.format(
    DIALECT, DRIVER, USERNAME, PASSWORD, HOST, PORT, DATABASE
)

SQLALCHEMY_COMMIT_ON_TEARDOWN = True
SQLALCHEMY_TRACK_MODIFICATIONS = True

SQLALCHEMY_POOL_SIZE = 10#连接池大小
SQLALCHEMY_MAX_OVERFLOW = 5#最大连接数

py与mysql之间session

from demo import create_app, db
from demo.models import User

app = create_app()

@app.route('/')
def index():
    user = User()
    user.username = "曹国华"
    user.password = "123"
    db.session.add(user)
    db.session.commit()


if __name__ == '__main__':
    app.run()#启动程序

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值