我用Python 2.6或2.7测试了Django 1.5.1。我的数据库在MySQL 5.0上。我已经创建了设置,但现在我无法在数据库上运行“inspectdb”。我得到了
DatabaseError:(1146,“表'db1.tableName'不存在”)
这发生在具有引用另一个DB中的表的外键的表上。所以它不应该是db1,因为tableName存在于db2中。我在5年前看到了对这个bug的引用:
https://code.djangoproject.com/ticket/7556
但补丁现在已经过时了,我认为它必须在以后的版本中完成。我的设置有问题吗?
答案 0 :(得分:0)
不幸的是,Django目前仍然没有does not support this feature。
跨数据库关系:
Django目前不提供对外键的支持 跨多个数据库的多对多关系。如果你有 使用路由器将模型分区到不同的数据库,任何外来的 这些模型定义的密钥和多对多关系必须是 单个数据库的内部。
但是,可以在此修补程序here
上找到修复程序基本上,更新路由器设置self.rel.to