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

问题描述 投票:3回答:1

我有来自Django oscar的过度模型的问题。我想为模型添加一个新字段,但当我这样做时,我有RuntimeError:在应用程序'order'中冲突的'order'模型:和。

这是我的代码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.init.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',

            ])
python django django-oscar
1个回答
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',

            ])
© www.soinside.com 2019 - 2024. All rights reserved.