iba*_*uio 7 django django-models
是否可以仅索引 Django 中 models.DateTimeField 的日期方面?
我似乎无法在文档中找到它,并且我不确定这样做是否有效
class Meta:
indexes = [
models.Index(fields=['created_at__year', 'created_at__month', 'created_at__day']),
]
Run Code Online (Sandbox Code Playgroud)
实际上现在你可以这样做:
from django.db.models.functions import TruncDate
#Model
...
class Meta:
indexes = [models.Index(TruncDate("created_at"), "created_at", name="created_at_date_idx")]
Run Code Online (Sandbox Code Playgroud)
这个答案展示了如何在 Postgres 中做到这一点。然而,Django 的索引不支持开箱即用。您需要通过 自行管理migrations.RunSQL。
migrations.RunSQL(
"CREATE INDEX foo_created_at_date_idx ON event ((created_at::DATE));",
"DROP INDEX IF EXISTS foo_created_at_date_idx;",
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3098 次 |
| 最近记录: |