从时间戳字段派生的 Django 日期字段
Django date field derived from timestamp field
我有一个 created_date 字段:
class Comment(models.Model):
created_date = models.DateTimeField(auto_now_add=True)
我想要一个源自 created_date 的字段,该字段理想地存在于模型中。我知道 SQL 我能做到:
SELECT created_date::date
FROM Comment
我如何在 Django 模型中定义它?
编辑:created_date 只是一个示例,所以我不能使用 datetime 模块中的 date.today()。另请注意,最终目标是制作一个带有几个不同字段的 slug,包括所需的 'date_only' 字段。
您可以使用 __date
lookup [Django-doc] when filtering or in F
-expression, or for older versions of Django you can use the TruncDate
function [Django-doc].
因此,例如,您可以使用
过滤特定日期的 Comment
s
from datetime import date
Comment.objects.filter(<strong>created_date__date=date(2022, 4, 9)</strong>)
然而,使用 …_date
意义不大:它是一个 datetime
对象,因此您的字段名称暗示它是一个 DateField
,最好使用created
,或created_timestamp
。
我有一个 created_date 字段:
class Comment(models.Model):
created_date = models.DateTimeField(auto_now_add=True)
我想要一个源自 created_date 的字段,该字段理想地存在于模型中。我知道 SQL 我能做到:
SELECT created_date::date
FROM Comment
我如何在 Django 模型中定义它?
编辑:created_date 只是一个示例,所以我不能使用 datetime 模块中的 date.today()。另请注意,最终目标是制作一个带有几个不同字段的 slug,包括所需的 'date_only' 字段。
您可以使用 __date
lookup [Django-doc] when filtering or in F
-expression, or for older versions of Django you can use the TruncDate
function [Django-doc].
因此,例如,您可以使用
过滤特定日期的Comment
s
from datetime import date
Comment.objects.filter(<strong>created_date__date=date(2022, 4, 9)</strong>)
然而,使用 …_date
意义不大:它是一个 datetime
对象,因此您的字段名称暗示它是一个 DateField
,最好使用created
,或created_timestamp
。