TimeField 不受支持的查找 'between' 或不允许在该字段上加入
Unsupported lookup 'between' for TimeField or join on the field not permitted
我有这样一个模型:
class Article(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
create_time = models.DateTimeField(auto_now_add=True,null=True)
然后我在视图函数中写了这样一条查询语句:
from datetime import time
start_time = time(hour=17)
end_time = time(hour=18)
articles = Article.objects.filter(create_time__time__between=(start_time,end_time))
但是 Django 抛出异常 django.core.exceptions.FieldError: Unsupported lookup 'between' for TimeField or join on the field not permitted.
,django document 说是 right.if 我想过滤时间在 17 到 18 之间,我该怎么办?
不,BETWEEN 查找的 Django 语法是 __range
,而不是 __between
- 这似乎是 __time
文档中的一个错误。
articles = Article.objects.filter(create_time__time__range=(start_time,end_time))
(我已经提交了 PR 来修复文档。)
我有这样一个模型:
class Article(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
create_time = models.DateTimeField(auto_now_add=True,null=True)
然后我在视图函数中写了这样一条查询语句:
from datetime import time
start_time = time(hour=17)
end_time = time(hour=18)
articles = Article.objects.filter(create_time__time__between=(start_time,end_time))
但是 Django 抛出异常 django.core.exceptions.FieldError: Unsupported lookup 'between' for TimeField or join on the field not permitted.
,django document 说是 right.if 我想过滤时间在 17 到 18 之间,我该怎么办?
不,BETWEEN 查找的 Django 语法是 __range
,而不是 __between
- 这似乎是 __time
文档中的一个错误。
articles = Article.objects.filter(create_time__time__range=(start_time,end_time))
(我已经提交了 PR 来修复文档。)