小福利,flask框架学习笔记(11)--Flask数据库迁移

大家好,我是天空之城,今天带来小福利,flask框架学习笔记(11)–Flask数据库
flask数据库的迁移和生成
项目总图
在这里插入图片描述
首先通过cmd窗口进入到项目所在文件夹,
创建虚拟环境pipenv shell(要先安装pip install pipenv包)
执行flask数据库迁移的三个步骤
python manage.py db init初始化
python manage.py db migrate
python manage.py db upgrade
最后可以查看到数据库里创建了User表格
在这里插入图片描述

manage.py文件

from flask_script import Manager
from flask_migrate import Migrate, MigrateCommand
from exts import db
from flask_app import app


# 需要映射那个模型到数据库,我们就导入哪个
from models import User

manage = Manager(app)

Migrate(app, db)

manage.add_command('db', MigrateCommand)


# @manage.option('-n',  dest='name')
# @manage.option('-e',  dest='email')
# @manage.option('-p',  dest='password')
# @manage.option('-a',  dest='age')
# def add_user(name, email, password, age):
#     user = User(name=name, email=email, password=password, age=age)
#     db.session.add(user)
#     db.session.commit()


if __name__ == '__main__':
    manage.run()

flask_app文件

from flask import Flask
import config
from models import User
from exts import db

app = Flask(__name__)
app.config.from_object(config)

# db = SQLAlchemy(app)
db.init_app(app)

# user = User(name='cheney', email='abc@163.com', password='123')
# db.session.add(user)
# db.session.commit()


@app.route('/')
def index():
    return '这是首页'


if __name__ == '__main__':
    app.run(debug=True)


models.py文件 建表文件

from exts import db


class User(db.Model):
    __tablename__ = 'project_user'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    name = db.Column(db.String(50))
    email = db.Column(db.String(50))
    password = db.Column(db.String(50))
    age = db.Column(db.Integer)

# db.create_all()


exts.py文件

from flask_sqlalchemy import SQLAlchemy


db = SQLAlchemy()

config.py文件

HOSTNAME = '127.0.0.1'

# 数据库
# 几栋
DATABASE = 'demo'

# 端口
# 门牌号
PORT = 3306

# 用户名和密码
# 钥匙
USERNAME = 'root'
PASSWORD = 'root'

DB_URL = 'mysql+pymysql://{}:{}@{}:{}/{}'.format(USERNAME, PASSWORD, HOSTNAME, PORT, DATABASE)


SQLALCHEMY_DATABASE_URI = DB_URL
SQLALCHEMY_TRACK_MODIFICATIONS = False

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值