如何在 Django Oscar 2.0 中正确地分叉应用程序
How to properly fork an app in Django Oscar 2.0
我正在尝试对结帐应用程序中的 mixin.py 文件进行小幅修改(具体来说,试图注释掉 OrderPlacementMixin
中的行,该行在成功订购后自动发送电子邮件为). However, I can't seem to get oscar to recognize my fork. I have already followed the steps as enumerated here 中有描述,没有运气。
这是我完成的步骤
1) 在项目根目录下创建一个custom_apps
目录,里面有一个空的__init__.py
文件
2) 运行 manage.py oscar_fork_app checkout custom_apps
- 此命令生成 checkout
目录以及多个文件。这是终端输出。我还附上了目录结构的照片
(venv) work@pc:~/MyProjects/oscar2_project/frobshop$ ./manage.py oscar_fork_app checkout custom_apps
Creating package custom_apps/checkout
Creating app config
Creating models.py
Replace the entry 'oscar.apps.checkout.apps.CheckoutConfig' with 'custom_apps.checkout.apps.CheckoutConfig' in INSTALLED_APPS
3) 我在 settings.py
中的 INSTALLED_APPS
中注释掉了 'oscar.apps.checkout'
,并在 INSTALLED_APPS` 列表的末尾插入了 'custom_apps.checkout'
4) I 运行 python manage.py runserver
,我得到异常 oscar.core.exceptions.AppNotFoundError: Couldn't find an Oscar app to import checkout.calculators from
。在这一点上,我什至还没有尝试修改任何代码,但是,我的叉子已经拒绝 运行.
如果有人能指出我遗漏的任何步骤,我将不胜感激。我知道可以复制 oscar.apps.checkout 的所有内容,但我想避免这样做。
Oscar 2.0 应用程序配置已扩展 Django apps configs。
您的分叉应用模块似乎没有指定 default_app_config
,因此您应该 add one,或者在 INSTALLED_APPS
中使用其应用配置的虚线路径 class:custom_apps.checkout.apps.CheckoutConfig
而不是 custom_apps.checkout
。
我正在尝试对结帐应用程序中的 mixin.py 文件进行小幅修改(具体来说,试图注释掉 OrderPlacementMixin
中的行,该行在成功订购后自动发送电子邮件为
这是我完成的步骤
1) 在项目根目录下创建一个custom_apps
目录,里面有一个空的__init__.py
文件
2) 运行 manage.py oscar_fork_app checkout custom_apps
- 此命令生成 checkout
目录以及多个文件。这是终端输出。我还附上了目录结构的照片
(venv) work@pc:~/MyProjects/oscar2_project/frobshop$ ./manage.py oscar_fork_app checkout custom_apps
Creating package custom_apps/checkout
Creating app config
Creating models.py
Replace the entry 'oscar.apps.checkout.apps.CheckoutConfig' with 'custom_apps.checkout.apps.CheckoutConfig' in INSTALLED_APPS
3) 我在 settings.py
中的 INSTALLED_APPS
中注释掉了 'oscar.apps.checkout'
,并在 INSTALLED_APPS` 列表的末尾插入了 'custom_apps.checkout'
4) I 运行 python manage.py runserver
,我得到异常 oscar.core.exceptions.AppNotFoundError: Couldn't find an Oscar app to import checkout.calculators from
。在这一点上,我什至还没有尝试修改任何代码,但是,我的叉子已经拒绝 运行.
如果有人能指出我遗漏的任何步骤,我将不胜感激。我知道可以复制 oscar.apps.checkout 的所有内容,但我想避免这样做。
Oscar 2.0 应用程序配置已扩展 Django apps configs。
您的分叉应用模块似乎没有指定 default_app_config
,因此您应该 add one,或者在 INSTALLED_APPS
中使用其应用配置的虚线路径 class:custom_apps.checkout.apps.CheckoutConfig
而不是 custom_apps.checkout
。