1
0
mirror of https://github.com/django/django.git synced 2025-10-26 15:16:09 +00:00

[1.6.x] Fixed #20955 -- select_related regression

In cases where the same connection (from model A to model B along the
same field) was needed multiple times in a select_related query, the
join setup code mistakenly reused an existing join.

Backpatch of 8d65b6082c.

Conflicts:

	django/db/models/sql/compiler.py
	tests/queries/tests.py
This commit is contained in:
Anssi Kääriäinen
2013-08-22 10:42:10 +03:00
parent 69a4594cb7
commit 161e26c2ec
3 changed files with 49 additions and 4 deletions

View File

@@ -497,3 +497,29 @@ class OrderItem(models.Model):
def __str__(self):
return '%s' % self.pk
class BaseUser(models.Model):
pass
@python_2_unicode_compatible
class Task(models.Model):
title = models.CharField(max_length=10)
owner = models.ForeignKey(BaseUser, related_name='owner')
creator = models.ForeignKey(BaseUser, related_name='creator')
def __str__(self):
return self.title
@python_2_unicode_compatible
class Staff(models.Model):
name = models.CharField(max_length=10)
def __str__(self):
return self.name
@python_2_unicode_compatible
class StaffUser(BaseUser):
staff = models.OneToOneField(Staff, related_name='user')
def __str__(self):
return self.staff