Spaces:
Running
Running
| """initial | |
| Revision ID: adcdae776345 | |
| Revises: | |
| Create Date: 2026-06-05 11:40:46.228344 | |
| """ | |
| from typing import Sequence, Union | |
| from alembic import op | |
| import sqlalchemy as sa | |
| # revision identifiers, used by Alembic. | |
| revision: str = 'adcdae776345' | |
| down_revision: Union[str, Sequence[str], None] = None | |
| branch_labels: Union[str, Sequence[str], None] = None | |
| depends_on: Union[str, Sequence[str], None] = None | |
| def upgrade() -> None: | |
| """Upgrade schema.""" | |
| # ### commands auto generated by Alembic - please adjust! ### | |
| op.create_table('users', | |
| sa.Column('id', sa.Integer(), nullable=False), | |
| sa.Column('email', sa.String(), nullable=False), | |
| sa.Column('password', sa.String(), nullable=False), | |
| sa.Column('created_at', sa.TIMESTAMP(timezone=True), server_default=sa.text('now()'), nullable=False), | |
| sa.PrimaryKeyConstraint('id'), | |
| sa.UniqueConstraint('email') | |
| ) | |
| op.create_table('posts', | |
| sa.Column('id', sa.Integer(), nullable=False), | |
| sa.Column('title', sa.String(), nullable=False), | |
| sa.Column('content', sa.String(), nullable=False), | |
| sa.Column('published', sa.Boolean(), server_default='TRUE', nullable=False), | |
| sa.Column('created_at', sa.TIMESTAMP(timezone=True), server_default=sa.text('now()'), nullable=False), | |
| sa.Column('owner_id', sa.Integer(), nullable=False), | |
| sa.ForeignKeyConstraint(['owner_id'], ['users.id'], ondelete='CASCADE'), | |
| sa.PrimaryKeyConstraint('id') | |
| ) | |
| op.create_table('votes', | |
| sa.Column('user_id', sa.Integer(), nullable=False), | |
| sa.Column('post_id', sa.Integer(), nullable=False), | |
| sa.ForeignKeyConstraint(['post_id'], ['posts.id'], ondelete='CASCADE'), | |
| sa.ForeignKeyConstraint(['user_id'], ['users.id'], ondelete='CASCADE'), | |
| sa.PrimaryKeyConstraint('user_id', 'post_id') | |
| ) | |
| # ### end Alembic commands ### | |
| def downgrade() -> None: | |
| """Downgrade schema.""" | |
| # ### commands auto generated by Alembic - please adjust! ### | |
| op.drop_table('votes') | |
| op.drop_table('posts') | |
| op.drop_table('users') | |
| # ### end Alembic commands ### | |