From 1ef18445eeaef4ee362bcfeea02abb140b377a34 Mon Sep 17 00:00:00 2001 From: Daniel Schadt Date: Tue, 30 Dec 2025 22:29:07 +0100 Subject: add migration for journeys table --- .../alembic/versions/20251230_f9ca03541351.py | 44 ++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 fietsboek/alembic/versions/20251230_f9ca03541351.py diff --git a/fietsboek/alembic/versions/20251230_f9ca03541351.py b/fietsboek/alembic/versions/20251230_f9ca03541351.py new file mode 100644 index 0000000..42f6d2f --- /dev/null +++ b/fietsboek/alembic/versions/20251230_f9ca03541351.py @@ -0,0 +1,44 @@ +"""add journeys table + +Revision ID: f9ca03541351 +Revises: 90b39fdf6e4b +Create Date: 2025-12-30 22:23:17.765361 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = 'f9ca03541351' +down_revision = '90b39fdf6e4b' +branch_labels = None +depends_on = None + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('journeys', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('owner_id', sa.Integer(), nullable=False), + sa.Column('title', sa.Text(), nullable=False), + sa.Column('description', sa.Text(), nullable=False), + sa.Column('visibility', sa.Enum('PRIVATE', 'FRIENDS', 'LOGGED_IN', 'PUBLIC', name='visibility'), nullable=False), + sa.Column('link_secret', sa.Text(), nullable=True), + sa.ForeignKeyConstraint(['owner_id'], ['users.id'], name=op.f('fk_journeys_owner_id_users')), + sa.PrimaryKeyConstraint('id', name=op.f('pk_journeys')) + ) + op.create_table('journey_track_assoc', + sa.Column('journey_id', sa.Integer(), nullable=False), + sa.Column('track_id', sa.Integer(), nullable=False), + sa.Column('sort_index', sa.Integer(), nullable=False), + sa.ForeignKeyConstraint(['journey_id'], ['journeys.id'], name=op.f('fk_journey_track_assoc_journey_id_journeys')), + sa.ForeignKeyConstraint(['track_id'], ['tracks.id'], name=op.f('fk_journey_track_assoc_track_id_tracks')), + sa.PrimaryKeyConstraint('journey_id', 'track_id', name=op.f('pk_journey_track_assoc')) + ) + # ### end Alembic commands ### + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('journey_track_assoc') + op.drop_table('journeys') + # ### end Alembic commands ### -- cgit v1.2.3