【问题标题】:Django Oscar on Windows errorWindows 上的 Django Oscar 错误
【发布时间】:2015-12-19 21:41:31
【问题描述】:

按照 django-oscar 文档分叉应用程序后,出现此错误:

ImportError:没有名为“apps\promotions”的模块

不知道我做错了什么

我做了什么:

python manage.py oscar_fork_app 促销应用

创建软件包应用\促销

创建 admin.py

创建应用配置

创建模型.py

创建迁移文件夹

最后一步是将“apps\promotions”添加到 INSTALLED_APPS (替换等效的 Oscar 应用程序)。这可以使用 Oscar 的 get_core_apps 函数 - 例如:

# settings.py
...
INSTALLED_APPS = [
'django.contrib.auth',
...
]
from oscar import get_core_apps
INSTALLED_APPS = INSTALLED_APPS + get_core_apps(
['apps\promotions'])

INSTALLED_APPS = [

'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.flatpages',
'compressor',
"django.contrib.admin",
'widget_tweaks',
"paypal",
] + get_core_apps(['apps.promotions'])

【问题讨论】:

  • 您是否创建了一个 app.py 来定义应用程序?
  • 为什么定义了两次INSTALLED_APPS?

标签: python django django-oscar


【解决方案1】:

你应该使用

INSTALLED_APPS = INSTALLED_APPS + get_core_apps(['apps.promotions'])

https://django-oscar.readthedocs.org/en/latest/topics/customisation.html#replace-oscar-s-app-with-your-own-in-installed-apps

【讨论】:

  • NameError: 名称“INSTALLED_APPS”未定义
  • 如果我这样做:INSTALLED_APPS = [ .. ] INSTALLED_APPS = INSTALLED_APPS + get_core_apps(['apps.promotions']) ImportError: No module named 'apps\\promotions'
猜你喜欢
  • 2015-04-02
  • 1970-01-01
  • 1970-01-01
  • 2014-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多