Princeaka's picture
Upload 14 files
220d87f verified
raw
history blame
1.31 kB
from alembic import op
import sqlalchemy as sa
revision = '0001_init'
down_revision = None
branch_labels = None
depends_on = None
def upgrade():
op.create_table(
'users',
sa.Column('id', sa.Integer(), primary_key=True),
sa.Column('email', sa.String(255), nullable=False, unique=True),
sa.Column('password_hash', sa.String(255), nullable=False),
sa.Column('created_at', sa.DateTime(), nullable=True),
)
op.create_table(
'api_keys',
sa.Column('id', sa.Integer(), primary_key=True),
sa.Column('key', sa.String(255), nullable=False, unique=True),
sa.Column('revoked', sa.Boolean(), default=False),
sa.Column('created_at', sa.DateTime(), nullable=True),
sa.Column('user_id', sa.Integer(), sa.ForeignKey('users.id', ondelete='CASCADE'))
)
op.create_table(
'chat_history',
sa.Column('id', sa.Integer(), primary_key=True),
sa.Column('role', sa.String(20)),
sa.Column('content', sa.Text(), nullable=False),
sa.Column('created_at', sa.DateTime(), nullable=True),
sa.Column('user_id', sa.Integer(), sa.ForeignKey('users.id', ondelete='CASCADE'))
)
def downgrade():
op.drop_table('chat_history')
op.drop_table('api_keys')
op.drop_table('users')