应用程序“订单”中的“订单”模型冲突

时间:2015-09-11 16:13:30

标签: python django django-oscar

我遇到了来自Django oscar的过度模型的问题。我想为模型添加一个新字段但是当我这样做时,我有运行时错误:应用程序'顺序'中的'订单'模型冲突:和

这就是我的代码 的 myapp.oscar_apps.order.models.py

from oscar.apps.order.models import *  # noqa
from oscar.apps.order.abstract_models import AbstractOrder  # noqa
from django.db import models

class Order(AbstractOrder):
    hash = models.CharField(max_length=256, blank=True, null=True)


from oscar.apps.order.models import *

* myapp.oscar_apps.order。的初始化的.py

default_app_config = 'bakdrop.oscar_apps.order.config.OrderConfig'

* myapp.oscar_apps.order.config.py

from myapp.apps.order import config


class OrderConfig(config.OrderConfig):
    name = 'myapp.oscar_apps.order'

有人可以帮我解决这个问题吗?

更新我的INSTALLED_APPS

 INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.sites',
    'django.contrib.flatpages',
    'compressor',
    'paypal',
    'crispy_forms',
    'django_select2',
    'myapp.apps.user',
    'myapp.apps.organization',
    'widget_tweaks',
    'djcelery',

] + get_core_apps([
                'myapp.apps.promotions',
                'myapp.oscar_apps.checkout',
                'myapp.oscar_apps.order',
                'myapp.oscar_apps.basket',
                'myapp.oscar_apps.shipping',
                'myapp.oscar_apps.payment',

            ])

1 个答案:

答案 0 :(得分:1)

而不是做

from oscar.apps.order.models import *

我认为你需要

from myapp.oscar.apps.order.models import *

一个好的调试策略是注释掉所有这些,并逐行重新引入它们。这样你可以指出错误:

get_core_apps([
                'myapp.apps.promotions',
                #'myapp.oscar_apps.checkout',
                #'myapp.oscar_apps.order',
                #'myapp.oscar_apps.basket',
                #'myapp.oscar_apps.shipping',
                #'myapp.oscar_apps.payment',

            ])
相关问题