Added blurbs to the model unit tests that didn't have them

git-svn-id: http://code.djangoproject.com/svn/django/trunk@3028 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Adrian Holovaty 2006-05-31 18:45:17 +00:00
parent 1bf991abb3
commit 3daae59aab
5 changed files with 26 additions and 12 deletions

View File

@ -1,5 +1,12 @@
""" """
23. Giving models a custom manager 23. Giving models a custom manager
You can use a custom ``Manager`` in a particular model by extending the base
``Manager`` class and instantiating your custom ``Manager`` in your model.
There are two reasons you might want to customize a ``Manager``: to add extra
``Manager`` methods, and/or to modify the initial ``QuerySet`` the ``Manager``
returns.
""" """
from django.db import models from django.db import models
@ -19,7 +26,7 @@ class Person(models.Model):
def __repr__(self): def __repr__(self):
return "%s %s" % (self.first_name, self.last_name) return "%s %s" % (self.first_name, self.last_name)
# An example of a custom manager that sets a core_filter on its lookups. # An example of a custom manager that sets get_query_set().
class PublishedBookManager(models.Manager): class PublishedBookManager(models.Manager):
def get_query_set(self): def get_query_set(self):

View File

@ -1,5 +1,7 @@
""" """
26. A test to check that the model validator works can correctly identify errors in a model. 26. Invalid models
This example exists purely to point out errors in models.
""" """
from django.db import models from django.db import models
@ -11,16 +13,16 @@ class FieldErrors(models.Model):
prepopulate = models.CharField(maxlength=10, prepopulate_from='bad') prepopulate = models.CharField(maxlength=10, prepopulate_from='bad')
choices = models.CharField(maxlength=10, choices='bad') choices = models.CharField(maxlength=10, choices='bad')
choices2 = models.CharField(maxlength=10, choices=[(1,2,3),(1,2,3)]) choices2 = models.CharField(maxlength=10, choices=[(1,2,3),(1,2,3)])
index = models.CharField(maxlength=10, db_index='bad') index = models.CharField(maxlength=10, db_index='bad')
class Target(models.Model): class Target(models.Model):
tgt_safe = models.CharField(maxlength=10) tgt_safe = models.CharField(maxlength=10)
clash1_set = models.CharField(maxlength=10) clash1_set = models.CharField(maxlength=10)
class Clash1(models.Model): class Clash1(models.Model):
src_safe = models.CharField(maxlength=10) src_safe = models.CharField(maxlength=10)
foreign = models.ForeignKey(Target) foreign = models.ForeignKey(Target)
m2m = models.ManyToManyField(Target) m2m = models.ManyToManyField(Target)
@ -36,27 +38,27 @@ class Clash2(models.Model):
class Target2(models.Model): class Target2(models.Model):
foreign_tgt = models.ForeignKey(Target) foreign_tgt = models.ForeignKey(Target)
clashforeign_set = models.ForeignKey(Target) clashforeign_set = models.ForeignKey(Target)
m2m_tgt = models.ManyToManyField(Target) m2m_tgt = models.ManyToManyField(Target)
clashm2m_set = models.ManyToManyField(Target) clashm2m_set = models.ManyToManyField(Target)
class Clash3(models.Model): class Clash3(models.Model):
foreign_1 = models.ForeignKey(Target2, related_name='foreign_tgt') foreign_1 = models.ForeignKey(Target2, related_name='foreign_tgt')
foreign_2 = models.ForeignKey(Target2, related_name='m2m_tgt') foreign_2 = models.ForeignKey(Target2, related_name='m2m_tgt')
m2m_1 = models.ManyToManyField(Target2, related_name='foreign_tgt') m2m_1 = models.ManyToManyField(Target2, related_name='foreign_tgt')
m2m_2 = models.ManyToManyField(Target2, related_name='m2m_tgt') m2m_2 = models.ManyToManyField(Target2, related_name='m2m_tgt')
class ClashForeign(models.Model): class ClashForeign(models.Model):
foreign = models.ForeignKey(Target2) foreign = models.ForeignKey(Target2)
class ClashM2M(models.Model): class ClashM2M(models.Model):
m2m = models.ManyToManyField(Target2) m2m = models.ManyToManyField(Target2)
class SelfClashForeign(models.Model): class SelfClashForeign(models.Model):
src_safe = models.CharField(maxlength=10) src_safe = models.CharField(maxlength=10)
selfclashforeign_set = models.ForeignKey("SelfClashForeign") selfclashforeign_set = models.ForeignKey("SelfClashForeign")
foreign_1 = models.ForeignKey("SelfClashForeign", related_name='id') foreign_1 = models.ForeignKey("SelfClashForeign", related_name='id')
foreign_2 = models.ForeignKey("SelfClashForeign", related_name='src_safe') foreign_2 = models.ForeignKey("SelfClashForeign", related_name='src_safe')

View File

@ -1,5 +1,7 @@
""" """
25. Default manipulators 25. Default manipulators
Each model gets an AddManipulator and ChangeManipulator by default.
""" """
from django.db import models from django.db import models

View File

@ -1,6 +1,7 @@
""" """
XX. Model inheritance XX. Model inheritance
Model inheritance isn't yet supported.
""" """
from django.db import models from django.db import models

View File

@ -1,5 +1,7 @@
""" """
22. Using properties on models 22. Using properties on models
Use properties on models just like on any other Python object.
""" """
from django.db import models from django.db import models