From e2a0de0b935659922df8c4b03741d6ebfaed0ee0 Mon Sep 17 00:00:00 2001 From: Alex Gaynor Date: Thu, 4 Nov 2010 16:37:00 +0000 Subject: [PATCH] Fixed a test failure introduced in [14461]. git-svn-id: http://code.djangoproject.com/svn/django/trunk@14462 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/db/models/sql/subqueries.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/django/db/models/sql/subqueries.py b/django/db/models/sql/subqueries.py index 932a4429ec..bad84c8eb8 100644 --- a/django/db/models/sql/subqueries.py +++ b/django/db/models/sql/subqueries.py @@ -4,7 +4,7 @@ Query subclasses which provide extra functionality beyond simple data retrieval. from django.core.exceptions import FieldError from django.db import connections -from django.db.models.fields import DateField +from django.db.models.fields import DateField, FieldDoesNotExist from django.db.models.sql.constants import * from django.db.models.sql.datastructures import Date from django.db.models.sql.expressions import SQLEvaluator @@ -189,12 +189,17 @@ class DateQuery(Query): """ Converts the query into a date extraction query. """ - result = self.setup_joins( - field_name.split(LOOKUP_SEP), - self.get_meta(), - self.get_initial_alias(), - False - ) + try: + result = self.setup_joins( + field_name.split(LOOKUP_SEP), + self.get_meta(), + self.get_initial_alias(), + False + ) + except FieldError: + raise FieldDoesNotExist("%s has no field named '%s'" % ( + self.model._meta.object_name, field_name + )) field = result[0] assert isinstance(field, DateField), "%r isn't a DateField." \ % field.name