我正在尝试执行数据库迁移,以通过tastepie 和South 创建API 密钥身份验证所需的表。这需要我运行python manage.py migrate tastypie
. 输出是:
Running migrations for tastypie:
Migrating forwards to 0002_add_apikey_index.
tastypie:0001_initial
FATAL ERROR - The following SQL query failed:
ALTER TABLE "tastypie_apikey"
ADD CONSTRAINT "user_id_refs_id_ac46cea0"
FOREIGN KEY ("user_id") REFERENCES "nox_customuser" ("id") DEFERRABLE INITIALLY DEFERRED;
The error was: relation "nox_customuser" does not exist
我已经实现了一个自定义用户模型,CustomUser(AbstractBaseUser)
到目前为止它工作得很好。在它的元类中,我设置了db_table = "custom_user"
.
问题似乎是 South 没有识别我的表名,而是使用默认命名方案。如果我要将失败查询中的关系从“nox_customuser”更改为“custom_user”,那么一切都应该按预期工作。
如何使用 South 进行修复?