- 卡片列表改为表格列表(10列),参考用户运营中心产品台账 - 数据库新增 priority + 5 个日期字段(start/plan/dev_done/test/launch) - 删除 owner/platform/feature_list 字段(migrate_drop_product_fields) - 日期内联编辑:5个日期列直接渲染 date input - 后端日期校验:4个时间不能早于启动时间;启动时间必填 - 详情页新增耗时统计区块(总/产品/研发/测试耗时) - 优先级和状态合并同一行 - 新增'未开始'状态 - 表格垂直居中对齐 - renderProducts 后重新初始化 lucide 图标
30 lines
1.1 KiB
Python
30 lines
1.1 KiB
Python
"""migrations/__init__.py — 数据库自愈机制入口
|
||
|
||
应用启动时调用 run_migrations(),自动:
|
||
1. 建表(CREATE TABLE IF NOT EXISTS)
|
||
2. 加列(SHOW COLUMNS 检查后 ALTER TABLE ADD COLUMN)
|
||
3. 数据修正(UPDATE 修复脏数据/变更枚举值)
|
||
4. 初始化默认用户和示例数据(仅空库时)
|
||
|
||
参考 SalesManager 的 migrations/ 模式,所有迁移函数幂等可重复执行。
|
||
"""
|
||
|
||
|
||
def run_migrations():
|
||
"""执行所有迁移(顺序执行,幂等)
|
||
|
||
延迟 import 避免 circular import(migrations 各子模块依赖 flask_app 的 db/_exec 等)。
|
||
"""
|
||
from migrations.tables import migrate_create_tables
|
||
from migrations.columns import migrate_add_columns
|
||
from migrations.data_fixes import migrate_fix_task_status, migrate_rename_tenant, migrate_drop_product_fields
|
||
from migrations.seed import migrate_seed_users, migrate_seed_demo_data
|
||
|
||
migrate_create_tables()
|
||
migrate_add_columns()
|
||
migrate_fix_task_status()
|
||
migrate_rename_tenant()
|
||
migrate_drop_product_fields()
|
||
migrate_seed_users()
|
||
migrate_seed_demo_data()
|