問題背景關系- 我有一個像這樣的 django 模型。
class UpdateRequests(models.Model):
field_name = models.CharField(max_length=20)
field_new_value = models.CharField(max_length=20)
created_at = models.CharField(max_length=10)
customer_id = models.CharField(max_length=50)
request_status = models.CharField(max_length=20, choices=JOS_STATUS)
request_close_date = models.CharField(max_length=20)
問題陳述 -我想獲取過去 24 小時內創建的所有記錄。
我是如何嘗試的 -我在我的視圖功能中嘗試這樣
time_threshold = datetime.now() - timedelta(days=1)
results = UpdateRequests.objects.filter(created_at__lte=time_threshold,
request_status="Pending").values()
但它不起作用,我猜是因為 django __lte , __gte 僅適用于 DateTimeField() 。 參考 - https://docs.djangoproject.com/en/4.1/ref/models/querysets/
請幫我解決這個問題,我不想更改架構,因為它已經在生產中了。
uj5u.com熱心網友回復:
Bruh您將日期時間存盤在charfieldcreated_at = models.CharField(max_length=10)中db如何為您提供Datetime物件?您必須在模型中進行更改并使用此再次創建物件
created_at = models.DateTimeField(null=True,blank=True,auto_now_add=True)
auto_now_add=True將在您創建模型物件時獲取當前日期時間。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/514839.html
標籤:django形式
