django - 将生菜添加到现有的 django 项目会抛出 'model already registered'

标签 django lettuce

我正在尝试将 Lettuce 添加到现有的 Django 项目中。配置了一个非常简单的功能目录后,我不断收到django.contrib.admin.sites.AlreadyRegistered:模型系列已注册。我检查了不同的导入(例如 import .modelsimport reg.models)、重复导入以及可能重新导入我的 admin.py 却无济于事的错误应用程序。该错误似乎来自生菜尝试重新加载模块。我不确定它为什么要这样做。回溯如下。

(dwcoop)s001 cro-mbp[126]% DJANGO_SETTINGS_MODULE=settings.testing django-admin.py harvest reg
Creating test database for alias 'default'...
Django's builtin server is running at 0.0.0.0:8000
Traceback (most recent call last):
  File "/Users/cro/src/ve/dwcoop/lib/python2.7/site- packages/lettuce/django/management/commands/harvest.py", line 167, in handle
    result = runner.run()
  File "/Users/cro/src/ve/dwcoop/lib/python2.7/site-packages/lettuce/__init__.py", line 137, in run
    self.loader.find_and_load_step_definitions()
  File "/Users/cro/src/ve/dwcoop/lib/python2.7/site-packages/lettuce/fs.py", line 60, in find_and_load_step_definitions
    reload(module)  # always take fresh meat :)
  File "/Users/cro/src/ve/dwcoop/web/web/reg/admin.py", line 60, in <module>
    admin.site.register(Family, FamilyAdmin)
  File "/Users/cro/src/ve/dwcoop/lib/python2.7/site-packages/django/contrib/admin/sites.py", line 83, in register
    raise AlreadyRegistered('The model %s is already registered' % model.__name__)
AlreadyRegistered: The model Family is already registered
Destroying test database for alias 'default'...

最佳答案

我面临着同样的问题,来自 cucumber 背景,希望从运行“harvest”开始,然后编写我的第一个功能文件。但我面临着这个错误。显然,如果您正在运行的应用程序中没有功能文件夹(由 settings.py 中的 LETTUCE_APPS 定义),并且其中至少有一个步骤定义文件 (.py)。看起来如果它没有找到默认位置的功能,它就会开始进行彻底的搜索,重新加载模块,从而导致管理重新加载失败。

关于django - 将生菜添加到现有的 django 项目会抛出 'model already registered',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17004347/

相关文章:

redis - 将多个响应式(Reactive) Publisher/Flux/Mono 对象组合成阻塞请求

Django模型字段: Ordered List of Foreign Keys

django - 将原始 SQL 传递到 Django 模板

Python无法从字典列表中创建字典

redis - 使用 Redis 集群自动故障转移到提升的 Redis Slave

python - 在生菜测试步骤中传入多个参数

python - 使用 egg 模块时同步 django-piston 模型

django - Django 的 'exact' 字段查找是否执行不区分大小写的搜索?

java - 能否从Redis的最新数据中得到我想要的数据?

python - 如何跳过生菜中的场景?