0

我用 Python 2.6 或 2.7 和 Django 1.5.1 进行了测试。我的数据库在 MySQL 5.0 上。我已经创建了设置,但现在我无法在数据库上运行“inspectdb”。我明白了

数据库错误:(1146,“表 'db1.tableName' 不存在”)

这发生在具有引用另一个数据库中的表的外键的表上。所以它不应该是 db1,因为 tableName 存在于 db2 中。我从 5 年前看到了对这个错误的引用:

https://code.djangoproject.com/ticket/7556

但是这个补丁现在已经过时了,我想它一定是在以后的版本中完成的。我的设置有问题吗?

4

1 回答 1

0

不幸的是,Django 目前还没有不支持这个特性

跨数据库关系:

Django 目前不支持外键或跨多个数据库的多对多关系。如果您使用路由器将模型分区到不同的数据库,则这些模型定义的任何外键和多对多关系必须在单个数据库内部。

但是,可以在此处的此补丁上找到修复程序

基本上,更新路由器设置self.rel.to

于 2013-06-05T13:59:24.683 回答