2

你好我有一个让我发疯的问题。我想向 ShippingAddress 类添加一个字段“公司”。我做下一个:

  1. 分叉 django-oscar 的应用程序订单。
  2. 在订单应用程序的文件 models.py 中,我编写了以下代码:

    from oscar.apps.address.abstract_models import AbstractShippingAddress
    
    class ShippingAddress(AbstractShippingAddress):`
    
    from oscar.apps.order.models import *  # noqa*
    

我得到下一个错误:

lib/python3.3/site-packages/django/apps/registry.py", line 221, in register_model
(model_name, app_label, app_models[model_name], model))
RuntimeError: Conflicting 'shippingaddress' models in application 'order': <class 'oscar.apps.order.models.ShippingAddress'> and <class 'apps.order.models.ShippingAddress'>.

我在用着Django==1.8.6, django-oscar==1.1.1 and python 3.3.

如果有人可以帮助我,我将不胜感激。

4

1 回答 1

0

我也遇到了这个问题,你的代码看起来不错,但是......

确保您正在使用

from oscar.core.loading import get_model
ShippingAddress = get_model('order', 'ShippingAddress') 

无论您使用ShippingAddress模型。

如果您的代码中有如下一行:

from oscar.apps.order.models import ShippingAddress

你会遇到这个问题。

于 2019-01-19T03:06:48.980 回答