2

こんにちは、頭がおかしくなる問題があります。クラス ShippingAddress に「company」フィールドを 1 つ追加したいと考えています。私は次のことをします:

  1. django-oscar のアプリの順序をフォークします。
  2. order アプリの 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モデルを使用できます。

コードに次のような 1 行があるとします。

from oscar.apps.order.models import ShippingAddress

この問題に遭遇します。

于 2019-01-19T03:06:48.980 に答える