django,多个数据库,配置问题:“导入数据库路由器时出错”

时间:2010-06-30 15:44:40

标签: database django configuration webfaction

我跟着these instructions设置了多个数据库的Django。它在我的本地开发环境(win7)中按预期工作,但是,当我将项目上传到我的实时服务器(webfaction)时,我得到了

ImproperlyConfigured: 导入数据库路由器MyCustomRouter时出错:“没有名为path.to.my.router的模块”

从Django shell中,我可以导入MyCustomRouter:

>>> from path.to.my.router import MyCustomRouter
>>>

我在本地和现场服务器上运行django 1.2.1和python2.6 ......

非常感谢任何可能导致此行为或如何调试的提示!

干杯,

马丁

4 个答案:

答案 0 :(得分:1)

path.to.myrouter只是一个占位符。

答案 1 :(得分:1)

我遇到了同样的问题。我在models.py中定义了一个路由器。将类定义移动到自己的文件中(我将其命名为router.py),并相应地更新settings.py,解决了错误。

答案 2 :(得分:1)

只需将以下内容添加到您的setting.py文件

即可
DATABASE_ROUTERS = ['myapp.routers.MyApp2Router',]

重命名您的路由器文件routers.py

答案 3 :(得分:0)

示例:

我的项目包含多个应用程序,例如“工资”,“税收”,“帮助台”等。
我在这里使用2个数据库-默认和prod_db

这是我设置路由器路径的方式
1.在工资单应用程序中,我创建了“ dbrouter.py”文件
2.在dbrouter.py中,我定义了DbRouter类(有关路由器代码,请参考此类-https://docs.djangoproject.com/en/2.1/topics/db/multi-db/
3.在settings.py中,设置路径
DATABASE_ROUTERS = ['payroll.dbrouter.DbRouter',]