如何在电子商务产品中声明“新”或“热门”标签,这些标签将在15天后自动删除

问题描述

我正在学习Django并创建一个电子商务网站。我想在我的新到产品中添加一个标签,作为** new **。此标签将在15年5月7日或30天后自动删除。 同样,如果任何产品有大量折扣,例如30%,40%或更多,这些产品将自动具有 HOT 标签。优惠到期后,该标签自动删除

请告诉我,我该怎么做。

谢谢。

解决方法

django本身不会像您期望的那样更改字段。

我认为您应该定义task,它负责检查模型的tag字段(即布尔值),如果超过30天,则将其更改为False。

首先,您需要在产品模型中添加taghot

然后,要创建定期任务,可以使用celery。它可以帮助您创建定期任务并且易于使用。

我认为每日任务很适合您的目标。

然后,您还可以定义另一个任务来检查hot字段。 也许以下说明会为您提供帮助:

https://medium.com/@ksarthak4ever/django-handling-periodic-tasks-with-celery-daaa2a146f14