版本信息:
Python 3.4,Django 1.8,Oscar Commerce – VERSION =(1,2,1,’final’)
我试图在documentation之后的目录应用程序中自定义产品.
分叉了目录应用程序,我已经定义了models.py如下:
from django.db import models
from oscar.apps.catalogue.abstract_models import AbstractProduct
class Product(AbstractProduct):
is_active = models.BooleanField(default=False)
from oscar.apps.catalogue.models import *
我已经将修改后的目录包含在settings.py中的INSTALLED_APPS中作为列表,如同类似问题here所建议的那样.
INSTALLED_APPS = INSTALLED_APPS + get_core_apps(
['app.gravytrain.catalogue',])
已将迁移文件夹从oscar / apps / catalog复制到我的自定义应用程序.
但是,运行迁移会导致以下错误:
RuntimeError: Conflicting 'product_product_options' models in
application 'catalogue': <class
'gravytrain.catalogue.models.Product_product_options'> and <class
app.gravytrain.catalogue.models.Product_product_options'>.
我该如何克服这个错误?
最佳答案 如果要导入某些模型,则需要使用get_model函数.
例如:
from oscar.core.loading import get_model
Product = get_model('catalogue', 'Product')