mirror of
https://github.com/django/django.git
synced 2025-10-24 14:16:09 +00:00
Fixed #18432 -- Prevented the ForeignKey field from creating an invalid query when chained. Thanks, Jann Kleen.
This commit is contained in:
committed by
Jannis Leidel
parent
5e6ded2e58
commit
1a412dda62
@@ -7,6 +7,7 @@ CHOICES = (
|
||||
(2, 'second'),
|
||||
)
|
||||
|
||||
|
||||
class Article(models.Model):
|
||||
headline = models.CharField(max_length=100, default='Default headline')
|
||||
pub_date = models.DateTimeField()
|
||||
@@ -15,24 +16,28 @@ class Article(models.Model):
|
||||
article_text = models.TextField()
|
||||
|
||||
class Meta:
|
||||
ordering = ('pub_date','headline')
|
||||
ordering = ('pub_date', 'headline')
|
||||
# A utf-8 verbose name (Ångström's Articles) to test they are valid.
|
||||
verbose_name = "\xc3\x85ngstr\xc3\xb6m's Articles"
|
||||
|
||||
def __unicode__(self):
|
||||
return self.headline
|
||||
|
||||
|
||||
class Movie(models.Model):
|
||||
#5218: Test models with non-default primary keys / AutoFields
|
||||
movie_id = models.AutoField(primary_key=True)
|
||||
name = models.CharField(max_length=60)
|
||||
|
||||
|
||||
class Party(models.Model):
|
||||
when = models.DateField(null=True)
|
||||
|
||||
|
||||
class Event(models.Model):
|
||||
when = models.DateTimeField()
|
||||
|
||||
|
||||
class Department(models.Model):
|
||||
id = models.PositiveIntegerField(primary_key=True)
|
||||
name = models.CharField(max_length=200)
|
||||
@@ -40,6 +45,7 @@ class Department(models.Model):
|
||||
def __unicode__(self):
|
||||
return self.name
|
||||
|
||||
|
||||
class Worker(models.Model):
|
||||
department = models.ForeignKey(Department)
|
||||
name = models.CharField(max_length=200)
|
||||
@@ -47,6 +53,7 @@ class Worker(models.Model):
|
||||
def __unicode__(self):
|
||||
return self.name
|
||||
|
||||
|
||||
class BrokenUnicodeMethod(models.Model):
|
||||
name = models.CharField(max_length=7)
|
||||
|
||||
@@ -55,5 +62,19 @@ class BrokenUnicodeMethod(models.Model):
|
||||
# object).
|
||||
return 'Názov: %s' % self.name
|
||||
|
||||
|
||||
class NonAutoPK(models.Model):
|
||||
name = models.CharField(max_length=10, primary_key=True)
|
||||
|
||||
|
||||
#18432: Chained foreign keys with to_field produce incorrect query
|
||||
class Model1(models.Model):
|
||||
pkey = models.IntegerField(unique=True, db_index=True)
|
||||
|
||||
|
||||
class Model2(models.Model):
|
||||
model1 = models.ForeignKey(Model1, unique=True, to_field='pkey')
|
||||
|
||||
|
||||
class Model3(models.Model):
|
||||
model2 = models.ForeignKey(Model2, unique=True, to_field='model1')
|
||||
|
||||
Reference in New Issue
Block a user