You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用dj-stripe+DRF开发订阅应用时的迁移错误求助

解决dj-stripe与Django迁移的系列问题

1. 修复自定义subscription_subscription表不存在的问题

  • 确认你的subscription应用已添加到settings.py的INSTALLED_APPS中
  • 生成并应用自定义应用的迁移:
    python manage.py makemigrations subscription
    python manage.py migrate subscription
    

2. 解决dj-stripe迁移冲突与依赖缺失问题

步骤1:清理dj-stripe的迁移记录与残留表

  • 登录PostgreSQL数据库,执行SQL删除dj-stripe的迁移记录:
    DELETE FROM django_migrations WHERE app = 'djstripe';
    
  • 确认数据库中所有以djstripe_开头的表已被完全删除(若有残留,手动删除)

步骤2:强制同步dj-stripe迁移状态

执行以下命令,让Django跳过初始迁移的依赖检查,并标记初始迁移为已应用:

python manage.py migrate djstripe --fake-initial

步骤3:完成全局迁移

执行全局迁移命令,确保所有应用的迁移都正常应用:

python manage.py migrate

3. 验证修复效果

  • 运行python manage.py showmigrations djstripe,确认所有dj-stripe的迁移项都标记为[X]
  • 重新测试订阅成功回调接口,确认数据库表访问正常

注意事项

  • 确保dj-stripe版本与你的Django版本兼容,避免版本不匹配引发的迁移异常
  • 不要手动删除第三方库的数据库表,如需重置迁移状态,使用Django的migrate --fake系列命令处理

内容的提问来源于stack exchange,提问作者Omnia Osman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 00:52:41