fastapi: alembic: 提示有外键导致数据表不能删除重建时的处理

一,解决:

手动修改version文件,添加一行代码,去掉外键约束:

二,代码例子:

def upgrade() -> None:
    """Upgrade schema."""

    # 1. 删除外键约束
    op.drop_constraint('user_roles_ibfk_1', 'user_roles', type_='foreignkey')
    op.drop_constraint('user_roles_ibfk_2', 'user_roles', type_='foreignkey')

    # ### commands auto generated by Alembic - please adjust! ###
    op.drop_index(op.f('name_2'), table_name='roles')
    op.drop_table('roles')
    op.drop_index(op.f('uix_role'), table_name='user_roles')
    op.drop_index(op.f('uix_user_role'), table_name='user_roles')
    op.drop_table('user_roles')
    # ### end Alembic commands ###

 

posted @ 2026-07-29 23:18  刘宏缔的架构森林  阅读(5)  评论(0)    收藏  举报