c69f45358db4_add_folder_table.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. """Add folder table
  2. Revision ID: c69f45358db4
  3. Revises: 3ab32c4b8f59
  4. Create Date: 2024-10-16 02:02:35.241684
  5. """
  6. from alembic import op
  7. import sqlalchemy as sa
  8. revision = "c69f45358db4"
  9. down_revision = "3ab32c4b8f59"
  10. branch_labels = None
  11. depends_on = None
  12. def upgrade():
  13. op.create_table(
  14. "folder",
  15. sa.Column("id", sa.Text(), nullable=False),
  16. sa.Column("parent_id", sa.Text(), nullable=True),
  17. sa.Column("user_id", sa.Text(), nullable=False),
  18. sa.Column("name", sa.Text(), nullable=False),
  19. sa.Column("items", sa.JSON(), nullable=True),
  20. sa.Column("meta", sa.JSON(), nullable=True),
  21. sa.Column("is_expanded", sa.Boolean(), default=False, nullable=False),
  22. sa.Column(
  23. "created_at", sa.DateTime(), server_default=sa.func.now(), nullable=False
  24. ),
  25. sa.Column(
  26. "updated_at",
  27. sa.DateTime(),
  28. nullable=False,
  29. server_default=sa.func.now(),
  30. onupdate=sa.func.now(),
  31. ),
  32. sa.PrimaryKeyConstraint("id", "user_id"),
  33. )
  34. op.add_column(
  35. "chat",
  36. sa.Column("folder_id", sa.Text(), nullable=True),
  37. )
  38. def downgrade():
  39. op.drop_column("chat", "folder_id")
  40. op.drop_table("folder")