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
?
谢谢
已解决:
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,拉动尚未经过审查。为什么要从此消息中删除拉取请求?
我需要在选项中添加一个序列字段来对它们进行排序(现在这些按字母顺序排列)并添加一个字段类型选项。
我查看了文档并执行此操作以自定义目录应用程序:
./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
?
谢谢
已解决:
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,拉动尚未经过审查。为什么要从此消息中删除拉取请求?