如何在 Django 网页上创建一个不会改变的日期



我在Django中创建了一个网页,显示数据库中的项目列表。我想创建一个功能,当用户首次生成该页面时,当前日期(而不是时间(会显示在页面上。困难的部分是,当用户在社交媒体或任何地方分享指向该页面的链接时,原始日期应保持不变。换句话说,每次后续用户通过第一个用户共享的链接查看页面时,它都不应更改。该日期仅在第一个用户生成页面时创建一次。

目的是向该页面的后续查看者显示截至第一个用户访问它们的日期的所有相关数据库项。但是,我还将提供有关自第一个用户访问它们之日起对数据库进行的其他相关条目数量的信息。然后,后续用户可以选择转到显示截至今天的所有数据库项的新页面。我该如何实现?

您可以跟踪用户使用模型生成页面的时间。该模型的字段之一应"创建",如下所示(当然名称可以是任何内容(。然后重写该模型的 save 方法,以仅在初始创建时更新创建的字段。(这是 django 中用于跟踪项目创建日期的标准技术(

from datetime import date
class Yourmodel(models.Model):
created = models.DateField()
def save(self, *args, **kwargs):
''' On save, update timestamps '''
if not self.id:
self.created = date.today()
return super(Yourmodel, self).save(*args, **kwargs)

最新更新