최대 며칠 전까지 다음 쿼리를 성공적으로 사용했습니다.Django : Django QuerySet 날짜가 잘못됨 SELECT
try:
totals = MyObject.objects.get(date=report_date)
except MyObject.DoesNotExist:
return HttpResponse('Could not find totals from %s' % (report_date))
몇 일 전이 쿼리 데이터가 내가 요구하고있는 일을 위해 존재 하는가에도 불구하고, 빈 검색어 세트를 반환하기 시작 : 다음 쿼리는 항상이 돌아 가정 된 데이터를 반환했습니다.
내가 report_date = date.today().strftime('%Y-%m-%d')
에서 또는 양식
if request.method == 'POST':
form = DateForm(request.POST)
if form.is_valid:
report_date = request.POST['date']
모델에서 날짜를 얻고는 대한 사실 데이터에 있다는 것을
class MyObject(models.Model):
"""Total numbers for a specific day"""
date = models.DateField()
... remaining fields ...
내가 쉘을 통해 확인한 간단하여 DateField()이다 TotalTransactions의 오늘 날짜. 나는 문제없이이 코드를 몇 달 동안 사용 해왔다. 어제 검색어를 통해 작업을했습니다. totals = MyObject.objects.get(date__gte=report_date, date__lte=report_date)
하지만 오늘 아침에는 더 이상 작동하지 않았습니다. 오늘 아침 나는 원래 쿼리 date=report_date
을 시도했는데 성공했습니다!
제 질문은 : 그렇다면 누구든지 전에이 문제가 있었습니까 ?? 아무도 내 코드에서 내가 누락 된 것을 볼 수 있습니까? 더 많은 대안에 대한 제안 사항이 있습니까? 시간 내 주셔서 감사합니다.
이것이 실제로는 손상된 db 데이터의 문제라고 생각합니다. 이 쿼리는 작동하지 않기에는 너무 간단합니다. 오늘 살펴 보겠습니다. – dm03514
당신의 SQL 셸에서 또는 파이썬/django 코드에서 원시 SQL을 사용하여 간단한 쿼리를 작성하여 날짜별로이 항목을 검색 할 수 있습니까? –
한 번 더 생각해보십시오. 문제가 로캘과 관련되어 있습니다. 문자열 (날짜 개체가 아님)이있을 때 시스템 로캘이 중요합니다. – Jerzyk