有没有办法告诉django-nose处理多个数据库?

时间:2013-06-24 15:56:58

标签: django nose django-nose

(在此交叉发布:https://github.com/jbalogh/django-nose/issues/129

在settings.py中,我列出了两个数据库:

DATABASES = {
    'default': {
        'ENGINE': 'mysql_pymysql',
        'NAME': 'OST_DEV_1',
        'USER': 'root',
        'PASSWORD': '',
        'HOST': 'localhost',
        'PORT': '3306',
    },
    'umc': {
        'ENGINE': 'mysql_pymysql',
        'NAME': 'UMC',
        'USER': 'root',
        'PASSWORD': '',
        'HOST': 'localhost',
        'PORT': '3306',
    }
}

如果我在没有REUSE_DB的情况下运行测试,它们会起作用,但是很慢(在创建/销毁数据库上花费了近2分钟):

bash
./manage.py test myapp

但这失败了:

REUSE_DB=1 ./manage.py test myapp
DatabaseError: (1146, u"Table 'OST_DEV_1.tblMfg' doesn't exist")

这是有道理的,因为tblMfg在UMC数据库中,而不是OST_DEV_1。有没有办法告诉django-nose在哪里找到tblMfg?请注意,我的测试本身并没有引用tblMfg - 我现在坚持1 + 1 == 2。

我们目前对UMC中的表使用'using':

active_mfgs = Mfg.objects.using('umc').filter(status="ACTIVE")

0 个答案:

没有答案