Bluelight 特别版 - Django Oscar 的报价和优惠券功能增强。
项目描述
Django Oscar Bluelight 特别版
此软件包包含对Django Oscar内置报价和优惠券功能的增强和改进。
功能
- 分组限制优惠券:Bluelight添加了将优惠券应用限制为特定白名单组(
django.contrib.auth.models.Group
)的能力。例如,您可以创建只能由属于组客户服务代表的用户应用的优惠券代码。 - 复合报价条件:默认情况下,Oscar只允许将单个条件分配给促销报价。复合报价条件允许您创建更复杂的逻辑,以确定何时启用报价。例如,您可以创建复合条件,指定购物车必须包含至少3个项目并且总价值超过50美元。
- 复合条件可以聚合无限数量的子条件。
- 复合条件可以使用AND或OR连接符连接其子条件。
- 需要同时使用AND和OR连接符的非常复杂的条件可以通过创建多个级别的复合条件来模拟。
- 父/子优惠券代码:默认情况下,Oscar不支持批量创建优惠券代码。Bluelight添加了为任何标准(非子)优惠券批量创建任意数量子优惠券(具有独特、自动生成的代码)的能力。当通过电子邮件向客户发送优惠券代码时,这非常有用,因为它允许创建数百或数千个非顺序、一次性使用的代码。
- 在创建新优惠券或创建优惠券后可以添加子代码。
- 任何时候都可以为优惠券生成更多子代码。
- 子代码可以导出为CSV和JSON格式。
- 每次编辑父优惠券(名称更改、福利变更等),所有子代码也会相应更新。
- 当删除父优惠券时,所有子代码也会被删除。
- 一旦优惠券分配了子代码,父优惠券本身就不能被任何人应用。
路线图
- 通过以下方式提高子代码创建和更新的性能:(1) 将部分工作提取到异步Celery任务中,以及(2) 在保存前更好地跟踪脏模型字段。
- 添加优惠券复制的功能。
- 添加向优惠券添加条件的能力。
注意事项
Bluelight目前通过派生Oscar的四个应用程序:offer、voucher、dashboard.offers和dashboard.vouchers来工作。目前,如果您的应用程序已经派生了这些应用程序,则无法使用Bluelight。
安装
安装[django-oscar-bluelight]{.title-ref}。
pip install django-oscar-bluelight
将Bluelight的设置导入项目的settings.py
文件。
from oscar.defaults import *
from oscarbluelight.defaults import * # Needed so that Bluelight's views show up in the dashboard
将Bluelight添加到您的已安装应用程序(替换等效的Django Oscar应用程序)。必须在oscar
应用程序之前定义顶层oscarbluelight
应用程序——如果不这样做,Django将无法正确找到Bluelight的模板。
INSTALLED_APPS = [
...
# Bluelight. Must come before `django-oscar` so that template inheritance / overrides work correctly.
'oscarbluelight',
'thelabdb.pgviews',
# django-oscar
'oscar',
'oscar.apps.analytics',
'oscar.apps.checkout',
'oscar.apps.address',
'oscar.apps.shipping',
'oscar.apps.catalogue',
'oscar.apps.catalogue.reviews',
'sandbox.partner', # 'oscar.apps.partner',
'sandbox.basket', # 'oscar.apps.basket',
'oscar.apps.payment',
'oscarbluelight.offer', # 'oscar.apps.offer',
'oscar.apps.order',
'oscar.apps.customer',
'oscar.apps.search',
'oscarbluelight.voucher', # 'oscar.apps.voucher',
'oscar.apps.wishlists',
'oscar.apps.dashboard',
'oscar.apps.dashboard.reports',
'oscar.apps.dashboard.users',
'oscar.apps.dashboard.orders',
'oscar.apps.dashboard.catalogue',
'oscarbluelight.dashboard.offers', # 'oscar.apps.dashboard.offers',
'oscar.apps.dashboard.partners',
'oscar.apps.dashboard.pages',
'oscar.apps.dashboard.ranges',
'oscar.apps.dashboard.reviews',
'oscarbluelight.dashboard.vouchers', # 'oscar.apps.dashboard.vouchers',
'oscar.apps.dashboard.communications',
'oscar.apps.dashboard.shipping',
...
]
在项目中派生篮子应用程序,并将BluelightBasketMixin
作为Line
模型的父类。
from oscar.apps.basket.abstract_models import AbstractLine
from oscarbluelight.mixins import BluelightBasketLineMixin
class Line(BluelightBasketLineMixin, AbstractLine):
pass
from oscar.apps.basket.models import * # noqa
用法
安装后,新的功能将在Oscar仪表板中的“优惠券”菜单下显示。
项目详情
下载文件
下载您平台对应的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源代码分发
django_oscar_bluelight-5.5.15.tar.gz (418.2 kB 查看哈希值)
构建分发
关闭
哈希值 for django_oscar_bluelight-5.5.15-py3-none-any.whl
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a094de21f84905da1a88c7acb24bca216b8f73bf5614a5bc40419efc098685d7 |
|
MD5 | 3aadd37fc204bd664f5aa2c34fd0e68e |
|
BLAKE2b-256 | 482534a353ff2b40f293d84bee42e6099d6e23b67eac8282ecf349ffbf17aac4 |