/tests/regressiontests/views/models.py

https://code.google.com/p/mango-py/ · Python · 49 lines · 24 code · 11 blank · 14 comment · 0 complexity · d988c1c6db6625057448ce896b45b576 MD5 · raw file

  1. """
  2. Regression tests for Django built-in views.
  3. """
  4. from django.db import models
  5. class Author(models.Model):
  6. name = models.CharField(max_length=100)
  7. def __unicode__(self):
  8. return self.name
  9. def get_absolute_url(self):
  10. return '/views/authors/%s/' % self.id
  11. class BaseArticle(models.Model):
  12. """
  13. An abstract article Model so that we can create article models with and
  14. without a get_absolute_url method (for create_update generic views tests).
  15. """
  16. title = models.CharField(max_length=100)
  17. slug = models.SlugField()
  18. author = models.ForeignKey(Author)
  19. class Meta:
  20. abstract = True
  21. def __unicode__(self):
  22. return self.title
  23. class Article(BaseArticle):
  24. date_created = models.DateTimeField()
  25. class UrlArticle(BaseArticle):
  26. """
  27. An Article class with a get_absolute_url defined.
  28. """
  29. date_created = models.DateTimeField()
  30. def get_absolute_url(self):
  31. return '/urlarticles/%s/' % self.slug
  32. get_absolute_url.purge = True
  33. class DateArticle(BaseArticle):
  34. """
  35. An article Model with a DateField instead of DateTimeField,
  36. for testing #7602
  37. """
  38. date_created = models.DateField()