App Engine Python SDK version 1.9.12
[gae.git] / python / lib / django-1.2 / tests / regressiontests / many_to_one_regress / models.py
blob53348a753d5786c31644824737cee2cf114da729
1 """
2 Regression tests for a few ForeignKey bugs.
3 """
5 from django.db import models
7 # If ticket #1578 ever slips back in, these models will not be able to be
8 # created (the field names being lower-cased versions of their opposite
9 # classes is important here).
11 class First(models.Model):
12 second = models.IntegerField()
14 class Second(models.Model):
15 first = models.ForeignKey(First, related_name = 'the_first')
17 # Protect against repetition of #1839, #2415 and #2536.
18 class Third(models.Model):
19 name = models.CharField(max_length=20)
20 third = models.ForeignKey('self', null=True, related_name='child_set')
22 class Parent(models.Model):
23 name = models.CharField(max_length=20)
24 bestchild = models.ForeignKey('Child', null=True, related_name='favored_by')
26 class Child(models.Model):
27 name = models.CharField(max_length=20)
28 parent = models.ForeignKey(Parent)
31 # Multiple paths to the same model (#7110, #7125)
32 class Category(models.Model):
33 name = models.CharField(max_length=20)
35 def __unicode__(self):
36 return self.name
38 class Record(models.Model):
39 category = models.ForeignKey(Category)
41 class Relation(models.Model):
42 left = models.ForeignKey(Record, related_name='left_set')
43 right = models.ForeignKey(Record, related_name='right_set')
45 def __unicode__(self):
46 return u"%s - %s" % (self.left.category.name, self.right.category.name)