more robust migrations

This commit is contained in:
2025-06-02 18:58:48 +02:00
parent 4dbaa27cba
commit 5c6c3f436e
51 changed files with 401 additions and 273 deletions

View File

@@ -18,21 +18,21 @@ depends_on = None
def upgrade():
# Create user_starred_file table
conn = op.get_bind()
conn = op.get_bind()
inspector = inspect(conn)
tables = inspector.get_table_names()
if 'user_starred_file' not in tables:
op.create_table('user_starred_file',
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('user_id', sa.Integer(), nullable=False),
sa.Column('file_id', sa.Integer(), nullable=False),
sa.Column('starred_at', sa.DateTime(), nullable=True),
sa.ForeignKeyConstraint(['file_id'], ['room_file.id'], ),
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
sa.PrimaryKeyConstraint('id'),
sa.UniqueConstraint('user_id', 'file_id', name='unique_user_file_star')
)
sa.Column('id', sa.Integer(), nullable=False),
sa.Column('user_id', sa.Integer(), nullable=False),
sa.Column('file_id', sa.Integer(), nullable=False),
sa.Column('starred_at', sa.DateTime(), nullable=True),
sa.ForeignKeyConstraint(['file_id'], ['room_file.id'], ),
sa.ForeignKeyConstraint(['user_id'], ['user.id'], ),
sa.PrimaryKeyConstraint('id'),
sa.UniqueConstraint('user_id', 'file_id', name='unique_user_file_star')
)
# Remove starred column from room_file
with op.batch_alter_table('room_file', schema=None) as batch_op: