【问题标题】:How to get django-nose installed correctly?如何正确安装 django-nose?
【发布时间】:2012-08-26 06:46:00
【问题描述】:

我无法让 django-nose 运行。

根据installation instructions,我是通过以下方式安装的:

  1. 正在运行pip install django-nose
  2. 在 settings.py 中将 'django_nose' 添加到 INSTALLED_APPS(包括 at 作为最后一个应用,以防可能出现应用顺序问题)
  3. TEST_RUNNER = 'django_nose.NoseTestSuiteRunner' 添加到settings.py

当我运行测试时,即manage.py test,我得到:

django.db.utils.DatabaseError: no such table: django_content_type

我想我需要同步数据库。我正在使用南方。当我使用manage.py syncdb 时,django_nose 既不会出现在同步应用列表中,也不会出现在“未同步(使用迁移)”应用列表中。

最后,当我尝试与南方同步时,即manage.py schemamigration django_nose --initial,我得到:

django.core.exceptions.ImproperlyConfigured: App with label django_nose is missing a models.py module.

我在 virtualenv 中安装了带有 South 版本 0.7.5 的 Django 1.4。

我做错了什么?如果没有,我该如何调试这个安装问题?

【问题讨论】:

  • 我遇到了同样的问题。从项目根目录运行nosetests 命令后,django_nose 现在可以工作了。但是,在运行./manage.py syncdb 时,它仍然没有显示在应用列表中。我不知道为什么会这样!

标签: django nose django-nose


【解决方案1】:

看起来这是关于应用程序订购的问题,引自 django-nose 手册:

与南方一起使用

South 安装了自己的测试命令,可在测试期间关闭迁移。确保在 INSTALLED_APPS 中 django-nose 位于 south 之后,以便使用 django_nose 的测试命令。

【讨论】:

  • 不怕。我怀疑应用程序订单,所以我实际上尝试将 django_nose 放在INSTALLED_APPS 的最后,但无济于事。
【解决方案2】:

如果你仔细阅读github上的文档,问题是在安装south时你需要把django_nose放在south下面,@ 987654321@.

所以您在 settings.py 文件中的 INSTALLED_APPS 应该如下所示:

INSTALLED_APPS = (
.....other apps...
....

south,
django_nose,
) 

【讨论】:

  • 嘿,谢谢,但我已经尝试过了,包括 django_nose 的最后一个 INSTALLED_APPS
【解决方案3】:

我在 INSTALLED_APPS 中使用 kombu.transport.django 时也遇到了类似的问题。我得到的错误是“配置不当:带有标签 django 的应用缺少 models.py 模块。”。看起来 South 的顺序确实很重要。我所做的是将 south 放在 INSTALLED_APPS 的最底部,

INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'djcelery',
'kombu.transport.django',
'sdm',
'cycletel_admin',
'django.contrib.admin',
'lettuce.django',
'south'
) 

这有助于解决问题。迁移成功运行。我用的是 Django 1.5

【讨论】:

    【解决方案4】:

    尝试将您要测试的应用放入您的设置中的 PROJECT_APPS;当它没有 models.py 文件时,它会尝试测试 django_nose 并为其生成模型。

    【讨论】:

      猜你喜欢
      • 2019-11-07
      • 2019-11-25
      • 1970-01-01
      • 1970-01-01
      • 2012-09-04
      • 2015-11-23
      • 2014-10-22
      • 2021-11-15
      • 2011-10-11
      相关资源
      最近更新 更多