Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 1.5:&x27;导入数据库路由器时出错';以前正确导入的_Django_Django Settings - Fatal编程技术网

Django 1.5:&x27;导入数据库路由器时出错';以前正确导入的

Django 1.5:&x27;导入数据库路由器时出错';以前正确导入的,django,django-settings,Django,Django Settings,在过去的几周里,我一直在运行Django 1.5,开发一个包含多个数据库的应用程序。我为一个单独的数据库设置了一个路由器,并将其放置在我的项目目录中的routers.py下。在设置中,我确保按照django文档规定的方式向路由器添加路径: # Extra Database Routing modules DATABASE_ROUTERS = ['myapp.routers.MyRouter'] 这起作用了。在过去的两周里,没有出现任何问题。现在,在我从djanog.conf导入设置中取出一个未

在过去的几周里,我一直在运行Django 1.5,开发一个包含多个数据库的应用程序。我为一个单独的数据库设置了一个路由器,并将其放置在我的项目目录中的routers.py下。在设置中,我确保按照django文档规定的方式向路由器添加路径:

# Extra Database Routing modules
DATABASE_ROUTERS = ['myapp.routers.MyRouter']
这起作用了。在过去的两周里,没有出现任何问题。现在,在我从djanog.conf导入设置中取出一个未使用的
后,随机保存了models.py文件,在运行
python manage.py runserver后,我在开发服务器上得到了这个文件:

Validating models...

0 errors found
August 02, 2013 - 16:12:42
Django version 1.5.1, using settings 'app.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
ImproperlyConfigured: Error importing database router MyRouter: "cannot import name connection"
注意,它在出错之前验证了所有模型。这对我来说毫无意义。 我去这些地方寻找答案

尝试从我的设置文件中的django.db import connections
导入连接时,导致
配置不正确:密钥设置不能为空。
这只是因为在导入
连接时,它还会导入django.db
\uuu init\uuuuuuuuuuuuupy
中的所有内容,其中包括django.conf导入设置中的
,然后会覆盖我已有的设置。(或者至少我相信这就是正在发生的事情)重点是我不完全理解正在发生的事情


有人能解释一下为什么我的路由器会突然无法导入吗?

在对核心django文件通电几个小时后,似乎出现了一个循环导入,这实际上是django框架内的一个bug,该框架已修复为1.6:这是问题;将包含我的自定义路由器(位于项目目录中)的my routers.py移动到其他模块(我使用的应用程序模块没有任何init.py文件)使所有内容再次正常运行。希望这能帮一些人省去一些麻烦。

在对核心django文件通电几个小时后,似乎出现了一个循环导入,这实际上是django框架中的一个bug,该框架针对1.6进行了修复:下面是将my routers.py(包含我的自定义路由器)移动到其他模块的票据(我使用了没有任何_init_upy.py文件的应用程序模块)使所有程序再次正常运行。希望这能帮一些人省去一些麻烦。谢谢!我的路由器被放置在模型模块中。我将它们移动到了同一个应用程序中的个人模块。解决了!