엉터리 개발 이야기

flask-migrate example

억삼이 2018. 7. 19. 16:02
반응형
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_migrate import Migrate

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://root:tester@localhost/test'

db = SQLAlchemy(app)
migrate = Migrate(app, db)

class Test(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(128))
email = db.Column(db.String(255))
address = db.Column(db.String(255))
title = db.Column(db.Integer)

class Product(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(128))
price = db.Column(db.BigInteger)


window 기준

set FLASK_APP = filename.py

■ init ( migrations 폴더 생성됨 )

flask db init


■ migrate ( version 파일 생성 ) -> 어떤 테이블이며, 컬럼 내용이 생성된다...?

flask db migrate


■ upgrade ( table 생성 및 컬럼 추가 및 삭제 )

flask db upgrade


■ 나머지..

flask db downgrade


데이터가 있어도 이 상태에서는 컬럼이 삭제된다.


반응형