2

我已按照这些说明设置 Django 与多个数据库。它在我的本地开发环境(win7)中按预期工作,但是,当我将项目上传到我的实时服务器(webfaction)时,我得到

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

从 Django shell,我可以导入 MyCustomRouter:

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

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

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

干杯,

马丁

4

4 回答 4

1

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

于 2011-07-12T23:55:43.577 回答
1

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

于 2010-06-30T19:09:08.683 回答
1

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

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

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

于 2013-01-31T09:13:40.813 回答
1

例子:

我的项目包含多个应用程序,如“工资单”、“税收”、“帮助台”等。
我在这里使用 2 db - default 和 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',]

于 2019-02-14T12:45:29.017 回答