Ticket #6018: select_related.diff

File select_related.diff, 1.2 KB (added by Matthias Urlichs <smurf@…>, 12 years ago)

One-character patch plus one-line testcase

  • django/db/models/query.py

    diff --git a/django/db/models/fields/__init__.py b/django/db/models/fields/__init__.py
    diff --git a/django/db/models/query.py b/django/db/models/query.py
    index 4d0d295..8472de2 100644
    a b def fill_table_cache(opts, select, tables, where, old_prefix, cache_tables_seen, 
    852852    """
    853853
    854854    # If we've got a max_depth set and we've exceeded that depth, bail now.
    855     if max_depth and cur_depth > max_depth:
     855    if max_depth and cur_depth >= max_depth:
    856856        return None
    857857
    858858    qn = connection.ops.quote_name
  • tests/modeltests/select_related/models.py

    diff --git a/tests/modeltests/select_related/models.py b/tests/modeltests/select_related/models.py
    index 43efab3..60e66b5 100644
    a b __test__ = {'API_TESTS':""" 
    147147>>> len(db.connection.queries)
    1481485
    149149
     150# Test the bug with select_related and extra combination
     151>>> s = Species.objects.all().select_related(depth=1).extra(select={'a': 'select_related_species.id + 10'})[0]
     152
     153# With the correct code the result should be True
     154>>> s.id + 10 == s.a
     155True
     156
    150157# Reset DEBUG to where we found it.
    151158>>> settings.DEBUG = False
    152159"""}
Back to Top