Django

Code

Changeset 6504

Show
Ignore:
Timestamp:
10/13/07 22:46:44 (11 months ago)
Author:
mtredinnick
Message:

queryset-refactor: Fixed handling of extra(tables=...). In passing, this solves
a duplicate table / bad SQL problem. Refs #2496.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/queryset-refactor/django/db/models/sql/query.py

    r6501 r6504  
    372372            else: 
    373373                result.append('%s%s' % (qn(name), alias_str)) 
    374         result.extend(self.extra_tables) 
     374        extra_tables = [] 
     375        for t in self.extra_tables: 
     376            alias, created = self.table_alias(t) 
     377            if created: 
     378                result.append(', %s' % alias) 
    375379        return result, [] 
    376380 
  • django/branches/queryset-refactor/tests/regressiontests/queries/models.py

    r6503 r6504  
    203203>>> Tag.objects.filter(item__isnull=True) 
    204204[<Tag: t5>] 
     205 
     206Bug #2496 
     207>>> Item.objects.extra(tables=['queries_author']).select_related().order_by('name')[:1] 
     208[<Item: four>] 
    205209"""} 
    206210