From b5c65525af1d6984084e530d3c42e57befe290df Mon Sep 17 00:00:00 2001 From: Rebecca Law Date: Thu, 10 Dec 2015 15:13:13 +0000 Subject: [PATCH] 109526036: Migration script for new table --- migrations/versions/40_verify_codes.py | 42 ++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 migrations/versions/40_verify_codes.py diff --git a/migrations/versions/40_verify_codes.py b/migrations/versions/40_verify_codes.py new file mode 100644 index 000000000..727915767 --- /dev/null +++ b/migrations/versions/40_verify_codes.py @@ -0,0 +1,42 @@ +"""empty message + +Revision ID: 40_verify_codes +Revises: 30_update_indexes +Create Date: 2015-12-09 16:39:44.673094 + +""" + +# revision identifiers, used by Alembic. +revision = '40_verify_codes' +down_revision = '30_update_indexes' + +from alembic import op +import sqlalchemy as sa + + +def upgrade(): + code_type_enum = sa.Enum('email', 'sms', name='verify_code_types') + # code_type_enum.create(op.get_bind(), checkfirst=False) + + op.create_table('verify_codes', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('user_id', sa.Integer(), nullable=False), + sa.Column('code', sa.String, nullable=False), + sa.Column('code_type', code_type_enum), + sa.Column('expiry_datetime', sa.DateTime(), nullable=False), + sa.Column('code_used', sa.Boolean(), nullable=True), + sa.ForeignKeyConstraint(['user_id'], ['users.id'], ), + sa.PrimaryKeyConstraint('id') + ) + op.create_index(op.f('ix_verify_codes_user_id'), 'verify_codes', ['user_id'], unique=False) + op.drop_constraint('users_name_key', 'users', type_='unique') + ### end Alembic commands ### + + +def downgrade(): + ### commands auto generated by Alembic - please adjust! ### + op.create_unique_constraint('users_name_key', 'users', ['name']) + op.drop_index(op.f('ix_verify_codes_user_id'), table_name='verify_codes') + op.drop_type('verify_code_types') + op.drop_table('verify_codes') + ### end Alembic commands ###