django-oscar 扩展选项模型

django-oscar extend Option model

我需要在选项中添加一个序列字段来对它们进行排序(现在这些按字母顺序排列)并添加一个字段类型选项。

我查看了文档并执行此操作以自定义目录应用程序:

./manage.py oscar_fork_app catalogue catalogue_custom

替换了 settings.py 中的应用程序,然后在新应用程序中尝试了这个:

catalogue_custom/catalogue/models.py

from oscar.apps.catalogue.models import *  # noqa isort:skip
from oscar.apps.catalogue.models import Option

class Option(object):
        pass

但是从shell开始还是原来的型号

In [1]: Option
Out[1]: oscar.apps.catalogue.models.Option

这里定义了需要覆盖的模型: https://github.com/django-oscar/django-oscar/blob/master/src/oscar/apps/catalogue/models.py

或第 1207 行: https://github.com/django-oscar/django-oscar/blob/ffcc530844d40283b6b1552778a140536b904f5f/src/oscar/apps/catalogue/abstract_models.py#L1207

?

谢谢

已解决:

from django.db import models
from oscar.apps.catalogue.abstract_models import AbstractOption

class Option(AbstractOption):
    default = models.CharField("Default", max_length=255, null=True)
    sequence = models.IntegerField("Sort", default=0 )

    class Meta:
        ordering = ['sequence']



from oscar.apps.catalogue.models import *  

就像一个魅力。


无论如何,我已经扩展了原始项目并发送了一个拉取请求,任何维护者都可以查看这个吗?

https://github.com/django-oscar/django-oscar/pull/3852


@solarissmoke,拉动尚未经过审查。为什么要从此消息中删除拉取请求?