"""Create direct_message_attachment table Revision ID: 0002 Revises: 0001 Create Date: 2025-12-12 22:00:00.000000 """ from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision = '0002' down_revision = '0001' branch_labels = None depends_on = None def upgrade() -> None: # Create direct_message_attachment table op.create_table( 'direct_message_attachment', sa.Column('id', sa.Integer(), nullable=False), sa.Column('filename', sa.String(), nullable=False), sa.Column('original_filename', sa.String(), nullable=False), sa.Column('mime_type', sa.String(), nullable=False), sa.Column('file_size', sa.Integer(), nullable=False), sa.Column('file_path', sa.String(), nullable=False), sa.Column('direct_message_id', sa.Integer(), nullable=False), sa.Column('uploader_id', sa.Integer(), nullable=True), sa.Column('webdav_path', sa.String(), nullable=True), sa.Column('upload_permission', sa.String(), nullable=False, server_default='read'), sa.Column('is_editable', sa.Boolean(), nullable=False, server_default='false'), sa.Column('uploaded_at', sa.DateTime(), nullable=False, server_default=sa.func.now()), sa.ForeignKeyConstraint(['direct_message_id'], ['direct_message.id'], ), sa.ForeignKeyConstraint(['uploader_id'], ['user.id'], ), sa.PrimaryKeyConstraint('id') ) def downgrade() -> None: op.drop_table('direct_message_attachment')