首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Satchmo:指定订单的交货日期/装运日期

Satchmo:指定订单的交货日期/装运日期
EN

Stack Overflow用户
提问于 2011-09-29 02:17:59
回答 1查看 166关注 0票数 0

我使用Satchmo在电子商务网站上工作。然而,我的商店几乎不需要定制。

  1. 在订购产品时,我应该能够指定一个交货日期(发货日期)。
  2. ,对于一个产品,每天只能交付20次(max_num_delievries)。如果某一特定产品的特定日期的交付次数超过“max_num_delievries”,用户在订购该产品时应无法选择该日期。

有人能在这方面提供帮助并指导我如何使用Satchmo来实现这个目标吗?

提前谢谢..。

EN

回答 1

Stack Overflow用户

发布于 2011-10-05 13:08:19

我会尝试这样的方法:

1)创建一个本地应用程序(例如。( delivery_date)有一个类似"DeliveryDate“之类的模型。例如,localsite/交货_date/Models.py:

代码语言:javascript
复制
class DeliveryDate(models.Model):
    product = models.ForeignKey(Product)
    date = models.DateField()
    order = models.ManyToManyField(Order)

    class Meta:
        unique_together = ("product", "date")

2)最大20条现有订单的有效性.嗯,好问题,也许最好的办法是,在表格上做?重写清洁方法并检查此交货日期是否与20份订单相关联.也许类似于localsite/交货日期/forms.py之类的东西

代码语言:javascript
复制
class DeliveryDateForm(forms.ModelForm):
    class Meta:
        model = DeliveryDate

    def clean(self):
        super(DeliveryDateForm, self).clean()
        ... check here the order_set count

..。但也许表格不是最好的地方。

您还可能希望隐藏并自动设置产品的初始值并自行订购,并且用户只需要选择一个日期。

3)关于satchmo..。我会在产品被添加到购物车后使用信号作出反应(这里有一个信号),并添加了一个监听器,它将用户重定向到他可以为该产品选择日期的视图。看这里的例子,其中有信号"cart_add_view":http://www.facebook.com/note.php?note_id=101466134049

也许ajax在这里是个不错的选择。你的页面里有个隐藏的容器..。它在将产品添加到购物车(只有当产品还没有与此订单/产品关联的DeliveryDate )并要求用户选择日期之后才会显示出来。

所有内容都在侦听器身上:检查产品是否需要一个交付日期,如果需要,发送一个ajax响应以弹出窗口,并将表单放入repsonse上下文中,并包含初始产品和订单隐藏字段。

为了保存交付日期,您需要另一个ajax视图。

嗯,这只是一个想法,我将如何尝试,-)它可能需要调整,这里和那里,当然。但希望它能进一步帮助你。

你好,安德里亚

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7591741

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档