Kamixitong/check_migration_status.py
2025-11-11 23:04:01 +08:00

35 lines
1017 B
Python

import os
import sys
# 添加项目根目录到Python路径
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
# 设置数据库URL为SQLite
os.environ['DATABASE_URL'] = 'sqlite:///kamaxitong.db'
from app import create_app, db
# 创建应用实例
app = create_app()
with app.app_context():
# 检查当前迁移状态
from alembic.runtime.migration import MigrationContext
from alembic.script import ScriptDirectory
# 获取迁移脚本目录
migrate_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'migrations')
script = ScriptDirectory(migrate_dir)
# 获取当前数据库的迁移状态
conn = db.engine.connect()
context = MigrationContext.configure(conn)
current_rev = context.get_current_revision()
print(f"Current database revision: {current_rev}")
# 获取所有迁移脚本
revisions = [rev.revision for rev in script.walk_revisions()]
print(f"Available revisions: {revisions}")
conn.close()