Files
video-gen/video-gen-api/alembic/versions/906b205a5a40_create_resources_material_table.py
T

56 lines
3.5 KiB
Python

"""create resources_material table
Revision ID: 906b205a5a40
Revises: 0a861ba0828b
Create Date: 2026-06-12 15:47:28.291461
"""
from typing import Sequence, Union
from alembic import op
import sqlalchemy as sa
revision: str = '906b205a5a40'
down_revision: Union[str, None] = '0a861ba0828b'
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None
def upgrade() -> None:
op.create_table('resources_material',
sa.Column('id', sa.BigInteger(), autoincrement=True, nullable=False, comment='主键'),
sa.Column('oauth_id', sa.String(length=64), nullable=False, comment='授权表user_oauth自增id'),
sa.Column('advertiser_id', sa.String(length=64), nullable=True, comment='广告主id'),
sa.Column('target_table', sa.String(length=64), nullable=True, comment='资源表名称'),
sa.Column('target_id', sa.String(length=64), nullable=True, comment='资源表id'),
sa.Column('material_id', sa.String(length=64), nullable=True, comment='素材id'),
sa.Column('upload_id', sa.String(length=128), nullable=True, comment='上传资源平台id,图片id,视频id'),
sa.Column('resource_type', sa.String(length=16), nullable=True, comment='资源类型,image或者video'),
sa.Column('user_id', sa.String(length=64), nullable=True, comment='用户登录id'),
sa.Column('created_at', sa.DateTime(timezone=True), server_default=sa.text('now()'), nullable=False),
sa.Column('updated_at', sa.DateTime(timezone=True), server_default=sa.text('now()'), nullable=False),
sa.Column('deleted_at', sa.DateTime(timezone=True), nullable=True),
sa.PrimaryKeyConstraint('id')
)
op.create_index(op.f('ix_resources_material_advertiser_id'), 'resources_material', ['advertiser_id'], unique=False)
op.create_index(op.f('ix_resources_material_deleted_at'), 'resources_material', ['deleted_at'], unique=False)
op.create_index(op.f('ix_resources_material_material_id'), 'resources_material', ['material_id'], unique=False)
op.create_index(op.f('ix_resources_material_oauth_id'), 'resources_material', ['oauth_id'], unique=False)
op.create_index(op.f('ix_resources_material_resource_type'), 'resources_material', ['resource_type'], unique=False)
op.create_index(op.f('ix_resources_material_target_id'), 'resources_material', ['target_id'], unique=False)
op.create_index(op.f('ix_resources_material_target_table'), 'resources_material', ['target_table'], unique=False)
op.create_index(op.f('ix_resources_material_upload_id'), 'resources_material', ['upload_id'], unique=False)
op.create_index(op.f('ix_resources_material_user_id'), 'resources_material', ['user_id'], unique=False)
def downgrade() -> None:
op.drop_index(op.f('ix_resources_material_user_id'), table_name='resources_material')
op.drop_index(op.f('ix_resources_material_upload_id'), table_name='resources_material')
op.drop_index(op.f('ix_resources_material_target_table'), table_name='resources_material')
op.drop_index(op.f('ix_resources_material_target_id'), table_name='resources_material')
op.drop_index(op.f('ix_resources_material_resource_type'), table_name='resources_material')
op.drop_index(op.f('ix_resources_material_oauth_id'), table_name='resources_material')
op.drop_index(op.f('ix_resources_material_material_id'), table_name='resources_material')
op.drop_index(op.f('ix_resources_material_deleted_at'), table_name='resources_material')
op.drop_index(op.f('ix_resources_material_advertiser_id'), table_name='resources_material')
op.drop_table('resources_material')