From b6819a9e3ef7c6555545ce05ef96dd7abf3b7af1 Mon Sep 17 00:00:00 2001 From: CI Bot Date: Sun, 19 Jul 2026 11:16:55 +0800 Subject: [PATCH] =?UTF-8?q?fix(migration):=20black=E6=A0=BC=E5=BC=8F?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- alembic/versions/045_backfill_user_id.py | 36 ++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 alembic/versions/045_backfill_user_id.py diff --git a/alembic/versions/045_backfill_user_id.py b/alembic/versions/045_backfill_user_id.py new file mode 100644 index 000000000..b3455a1e9 --- /dev/null +++ b/alembic/versions/045_backfill_user_id.py @@ -0,0 +1,36 @@ +"""backfill user_id for generated_videos from generation_tasks + +Revision ID: 045_backfill_user_id_generated_videos +Revises: 044_user_id_generated_videos +Create Date: 2026-07-19 10:50:00.000000 + +""" + +import sqlalchemy as sa + +from alembic import op + +# revision identifiers, used by Alembic. +revision = "045_backfill_user_id" +down_revision = "044_user_id_generated_videos" +branch_labels = None +depends_on = None + + +def upgrade() -> None: + # 回填 generated_videos.user_id:通过 generation_task_id 关联 generation_tasks 表 + # 取 generation_tasks.created_by_user_id 作为 user_id + # 回填不到的(无关联task的兜底记录)保持空字符串 + op.execute(""" + UPDATE generated_videos gv + SET user_id = gt.created_by_user_id + FROM generation_tasks gt + WHERE gv.generation_task_id = gt.id + AND gv.user_id = '' + AND gt.created_by_user_id != '' + """) + + +def downgrade() -> None: + # 降级不做处理(无法精确区分哪些是回填的) + pass -- 2.54.0