mirror of
https://github.com/open-webui/open-webui
synced 2025-01-19 17:26:33 +00:00
71 lines
1.9 KiB
Python
71 lines
1.9 KiB
Python
"""Update message & channel tables
|
|
|
|
Revision ID: 3781e22d8b01
|
|
Revises: 7826ab40b532
|
|
Create Date: 2024-12-30 03:00:00.000000
|
|
|
|
"""
|
|
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
revision = "3781e22d8b01"
|
|
down_revision = "7826ab40b532"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade():
|
|
# Add 'type' column to the 'channel' table
|
|
op.add_column(
|
|
"channel",
|
|
sa.Column(
|
|
"type",
|
|
sa.Text(),
|
|
nullable=True,
|
|
),
|
|
)
|
|
|
|
# Add 'parent_id' column to the 'message' table for threads
|
|
op.add_column(
|
|
"message",
|
|
sa.Column("parent_id", sa.Text(), nullable=True),
|
|
)
|
|
|
|
op.create_table(
|
|
"message_reaction",
|
|
sa.Column(
|
|
"id", sa.Text(), nullable=False, primary_key=True, unique=True
|
|
), # Unique reaction ID
|
|
sa.Column("user_id", sa.Text(), nullable=False), # User who reacted
|
|
sa.Column(
|
|
"message_id", sa.Text(), nullable=False
|
|
), # Message that was reacted to
|
|
sa.Column(
|
|
"name", sa.Text(), nullable=False
|
|
), # Reaction name (e.g. "thumbs_up")
|
|
sa.Column(
|
|
"created_at", sa.BigInteger(), nullable=True
|
|
), # Timestamp of when the reaction was added
|
|
)
|
|
|
|
op.create_table(
|
|
"channel_member",
|
|
sa.Column(
|
|
"id", sa.Text(), nullable=False, primary_key=True, unique=True
|
|
), # Record ID for the membership row
|
|
sa.Column("channel_id", sa.Text(), nullable=False), # Associated channel
|
|
sa.Column("user_id", sa.Text(), nullable=False), # Associated user
|
|
sa.Column(
|
|
"created_at", sa.BigInteger(), nullable=True
|
|
), # Timestamp of when the user joined the channel
|
|
)
|
|
|
|
|
|
def downgrade():
|
|
# Revert 'type' column addition to the 'channel' table
|
|
op.drop_column("channel", "type")
|
|
op.drop_column("message", "parent_id")
|
|
op.drop_table("message_reaction")
|
|
op.drop_table("channel_member")
|