如何检查用户输入的条目在过去30天内是否已由他/她在我的Django websi中输入

2024-03-28 11:18:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用Django 1.7.7和Python3.4.4构建一个调查网站,用户输入并说出他的“姓名”和“id”。我有一个名为“list”的sql表,它存储所有用户名和id。我想让我的Django网站检查当用户输入他/她的姓名和id时,该id是否已经存在于过去30天的表格中。基本上,如果用户的id在过去30天内存在,则不会提示他/她进行调查,否则他们将不得不进行调查

我知道我必须构建一个查看函数来检查这个条件,但我无法确定查询/逻辑应该是什么。在视图功能上的任何帮助都将极大地帮助我的发展!多谢各位


Tags: django函数用户功能视图idsql网站
1条回答
网友
1楼 · 发布于 2024-03-28 11:18:51

您可以将“时间戳”字段添加到列表模型中。您甚至可以使用auto_now_add参数使Django自动将其设置为now()

 timestamp = models.DateTimeField(auto_now_add=True)

您可以检查上个月内是否有同名id的记录:

 from django.utils.timezone import now
 import datetime
 is_duplicate = List.objects.filter(id=id, name=name, timestamp__gte = now() - datetime.timedelta(days=30))

注意ugte构造的用法-它表示“大于”,可与数字和时间戳一起使用。此筛选器将仅返回在过去30天内创建的记录。希望这有帮助

相关问题 更多 >