From 1b58c65666deb64c1d4811cf417f979a2a48981a Mon Sep 17 00:00:00 2001 From: Michael Weimann Date: Tue, 6 Jul 2021 21:19:58 +0200 Subject: [PATCH] fix migrations --- .../44b45a772abd_initial_migration.py | 126 ++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 migrations/versions/44b45a772abd_initial_migration.py diff --git a/migrations/versions/44b45a772abd_initial_migration.py b/migrations/versions/44b45a772abd_initial_migration.py new file mode 100644 index 0000000..db8552e --- /dev/null +++ b/migrations/versions/44b45a772abd_initial_migration.py @@ -0,0 +1,126 @@ +"""Initial migration. + +Revision ID: 44b45a772abd +Revises: +Create Date: 2021-07-06 21:19:44.217722 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = '44b45a772abd' +down_revision = None +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('contacttype', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('name', sa.String(length=25), nullable=False), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('language', + sa.Column('id', sa.String(length=2), nullable=False), + sa.Column('name', sa.String(length=25), nullable=False), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('profile', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('nickname', sa.String(length=25), nullable=False), + sa.Column('pronouns', sa.String(length=25), nullable=True), + sa.Column('volunteerwork', sa.String(length=4000), nullable=True), + sa.Column('freetext', sa.String(length=4000), nullable=True), + sa.Column('availability', sa.String(length=4000), nullable=True), + sa.Column('visible', sa.Boolean(), nullable=False), + sa.Column('created', sa.DateTime(), nullable=False), + sa.Column('updated', sa.DateTime(), nullable=False), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('nickname') + ) + op.create_table('skill', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('name', sa.String(length=25), nullable=False), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('name') + ) + op.create_table('address', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('name', sa.String(length=25), nullable=True), + sa.Column('street', sa.String(length=25), nullable=True), + sa.Column('house_number', sa.String(length=10), nullable=True), + sa.Column('additional', sa.String(length=25), nullable=True), + sa.Column('postcode', sa.String(length=10), nullable=True), + sa.Column('city', sa.String(length=25), nullable=True), + sa.Column('country', sa.String(length=25), nullable=True), + sa.Column('profile_id', sa.Integer(), nullable=False), + sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('contact', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('profile_id', sa.Integer(), nullable=False), + sa.Column('contacttype_id', sa.Integer(), nullable=False), + sa.Column('content', sa.String(length=200), nullable=False), + sa.ForeignKeyConstraint(['contacttype_id'], ['contacttype.id'], ), + sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('profile_language', + sa.Column('profile_id', sa.Integer(), nullable=False), + sa.Column('language_id', sa.Integer(), nullable=False), + sa.Column('level', sa.SmallInteger(), nullable=False), + sa.ForeignKeyConstraint(['language_id'], ['language.id'], ), + sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), + sa.PrimaryKeyConstraint('profile_id', 'language_id') + ) + op.create_table('profile_searchtopic', + sa.Column('profile_id', sa.Integer(), nullable=False), + sa.Column('skill_id', sa.Integer(), nullable=False), + sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), + sa.ForeignKeyConstraint(['skill_id'], ['skill.id'], ), + sa.PrimaryKeyConstraint('profile_id', 'skill_id') + ) + op.create_table('profile_skill', + sa.Column('profile_id', sa.Integer(), nullable=False), + sa.Column('skill_id', sa.Integer(), nullable=False), + sa.Column('level', sa.SmallInteger(), nullable=False), + sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), + sa.ForeignKeyConstraint(['skill_id'], ['skill.id'], ), + sa.PrimaryKeyConstraint('profile_id', 'skill_id') + ) + op.create_table('user', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('auth_id', sa.String(length=50), nullable=False), + sa.Column('profile_id', sa.Integer(), nullable=True), + sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('auth_id') + ) + op.create_table('token', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('user_id', sa.Integer(), nullable=False), + sa.Column('token', sa.String(length=36), nullable=False), + sa.ForeignKeyConstraint(['user_id'], ['user.id'], ), + sa.PrimaryKeyConstraint('id') + ) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('token') + op.drop_table('user') + op.drop_table('profile_skill') + op.drop_table('profile_searchtopic') + op.drop_table('profile_language') + op.drop_table('contact') + op.drop_table('address') + op.drop_table('skill') + op.drop_table('profile') + op.drop_table('language') + op.drop_table('contacttype') + # ### end Alembic commands ###