我試圖在django上分割我的數據庫,但我在第一步有奇怪的錯誤。django 1.4數據庫路由器 - 「無法導入名稱連接」
我做了一個簡單的數據庫路由器,即dous什麼:
DATABASE_ROUTERS = ['myproject.myapp.routers.ShardingRouter',]
我得到這個錯誤:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 219, in __call__
self.load_middleware()
File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 45, in load_middleware
mod = import_module(mw_module)
File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/hosting/myproject/myproject/middleware.py", line 10, in <module>
from django.contrib.sites.models import Site
File "/usr/local/lib/python2.7/dist-packages/django/contrib/sites/models.py", line 1, in <module>
from django.db import models
File "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 16, in <module>
router = ConnectionRouter(settings.DATABASE_ROUTERS)
File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 116, in __init__
raise ImproperlyConfigured('Error importing database router %s: "%s"' % (klass_name, e))
ImproperlyConfigured: Error importing database router ShardingRouter: "cannot import name connection"
'''file /myproject/myapp/routers.py'''
class ShardingRouter(object):
def db_for_read(self, model, **hints):
return 'default'
def db_for_write(self, model, **hints):
return 'default'
def allow_relation(self, obj1, obj2, **hints):
return 'default'
def allow_syncdb(self, db, model):
return 'default'
我settings.py中添加什麼'連接'?這是什麼意思? 找不到,哪裏是你需要在你的settings.py
導入connections
問題((
這有幫助!但是,只有當我在'DATABASES'聲明後放置此導入時,它才起作用 – Antonio 2012-07-30 17:52:25