From 1a910d21ef4b1a15d153c5b2445a664a6e96bcf5 Mon Sep 17 00:00:00 2001 From: Ryan Reed Date: Tue, 2 Jul 2019 19:58:14 -0400 Subject: [PATCH] Correcting baseline alembic script and adding username --- alembic/versions/47ddcb4d3c36_baseline.py | 40 ++++++++++++++ ...3d42f09bc_adding_users_and_items_tables.py | 54 ------------------- alembic/versions/b00a3ca977cc_baseline.py | 24 --------- app/models.py | 3 +- app/schemas.py | 1 + 5 files changed, 43 insertions(+), 79 deletions(-) create mode 100644 alembic/versions/47ddcb4d3c36_baseline.py delete mode 100644 alembic/versions/4fe3d42f09bc_adding_users_and_items_tables.py delete mode 100644 alembic/versions/b00a3ca977cc_baseline.py diff --git a/alembic/versions/47ddcb4d3c36_baseline.py b/alembic/versions/47ddcb4d3c36_baseline.py new file mode 100644 index 0000000..634bc89 --- /dev/null +++ b/alembic/versions/47ddcb4d3c36_baseline.py @@ -0,0 +1,40 @@ +"""baseline + +Revision ID: 47ddcb4d3c36 +Revises: +Create Date: 2019-07-02 19:49:53.554255 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = "47ddcb4d3c36" +down_revision = None +branch_labels = None +depends_on = None + + +def upgrade(): + op.create_table( + "items", + sa.Column("id", sa.Integer, primary_key=True), + sa.Column("title", sa.String(), nullable=False), + sa.Column("description", sa.String()), + sa.Column("owner_id", sa.Integer) + ) + + op.create_table( + "users", + sa.Column("id", sa.Integer, primary_key=True), + sa.Column("username", sa.String(), nullable=False), + sa.Column("email", sa.String(), nullable=False), + sa.Column("hashed_password", sa.String(), nullable=False), + sa.Column("is_active", sa.Integer) + ) + + +def downgrade(): + op.drop_table("items") + op.drop_table("users") diff --git a/alembic/versions/4fe3d42f09bc_adding_users_and_items_tables.py b/alembic/versions/4fe3d42f09bc_adding_users_and_items_tables.py deleted file mode 100644 index 3f1eb8c..0000000 --- a/alembic/versions/4fe3d42f09bc_adding_users_and_items_tables.py +++ /dev/null @@ -1,54 +0,0 @@ -"""Adding users and items tables - -Revision ID: 4fe3d42f09bc -Revises: b00a3ca977cc -Create Date: 2019-07-02 19:13:32.182089 - -""" -from alembic import op -import sqlalchemy as sa - - -# revision identifiers, used by Alembic. -revision = '4fe3d42f09bc' -down_revision = 'b00a3ca977cc' -branch_labels = None -depends_on = None - - -def upgrade(): - # ### commands auto generated by Alembic - please adjust! ### - op.drop_index('ix_users_email', table_name='users') - op.drop_index('ix_users_id', table_name='users') - op.drop_table('users') - op.drop_index('ix_items_description', table_name='items') - op.drop_index('ix_items_id', table_name='items') - op.drop_index('ix_items_title', table_name='items') - op.drop_table('items') - # ### end Alembic commands ### - - -def downgrade(): - # ### commands auto generated by Alembic - please adjust! ### - op.create_table('items', - sa.Column('id', sa.INTEGER(), nullable=False), - sa.Column('title', sa.VARCHAR(), nullable=True), - sa.Column('description', sa.VARCHAR(), nullable=True), - sa.Column('owner_id', sa.INTEGER(), nullable=True), - sa.ForeignKeyConstraint(['owner_id'], ['users.id'], ), - sa.PrimaryKeyConstraint('id') - ) - op.create_index('ix_items_title', 'items', ['title'], unique=False) - op.create_index('ix_items_id', 'items', ['id'], unique=False) - op.create_index('ix_items_description', 'items', ['description'], unique=False) - op.create_table('users', - sa.Column('id', sa.INTEGER(), nullable=False), - sa.Column('email', sa.VARCHAR(), nullable=True), - sa.Column('hashed_password', sa.VARCHAR(), nullable=True), - sa.Column('is_active', sa.BOOLEAN(), nullable=True), - sa.CheckConstraint('is_active IN (0, 1)'), - sa.PrimaryKeyConstraint('id') - ) - op.create_index('ix_users_id', 'users', ['id'], unique=False) - op.create_index('ix_users_email', 'users', ['email'], unique=1) - # ### end Alembic commands ### diff --git a/alembic/versions/b00a3ca977cc_baseline.py b/alembic/versions/b00a3ca977cc_baseline.py deleted file mode 100644 index 7c57909..0000000 --- a/alembic/versions/b00a3ca977cc_baseline.py +++ /dev/null @@ -1,24 +0,0 @@ -"""baseline - -Revision ID: b00a3ca977cc -Revises: -Create Date: 2019-07-02 18:51:54.019630 - -""" -from alembic import op -import sqlalchemy as sa - - -# revision identifiers, used by Alembic. -revision = 'b00a3ca977cc' -down_revision = None -branch_labels = None -depends_on = None - - -def upgrade(): - pass - - -def downgrade(): - pass diff --git a/app/models.py b/app/models.py index 535524f..98d8865 100644 --- a/app/models.py +++ b/app/models.py @@ -7,6 +7,7 @@ class User(Base): __tablename__ = "users" id = Column(Integer, primary_key=True, index=True) + username = Column(String, unique=True, index=True) email = Column(String, unique=True, index=True) hashed_password = Column(String) is_active = Column(Boolean, default=True) @@ -18,7 +19,7 @@ class Item(Base): id = Column(Integer, primary_key=True, index=True) title = Column(String, index=True) - description = Column(String, index=True) + description = Column(String) owner_id = Column(Integer, ForeignKey("users.id")) owner = relationship("User", back_populates="items") diff --git a/app/schemas.py b/app/schemas.py index cfc20d8..60f5f65 100644 --- a/app/schemas.py +++ b/app/schemas.py @@ -19,6 +19,7 @@ class Item(ItemBase): class UserBase(BaseModel): email: str + username: str class UserCreate(UserBase): password: str