models.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. from django.db import models
  2. from django.utils import six
  3. from django.utils.encoding import python_2_unicode_compatible
  4. class Article(models.Model):
  5. """
  6. A simple Article model for testing
  7. """
  8. site = models.ForeignKey('sites.Site', related_name="admin_articles")
  9. title = models.CharField(max_length=100)
  10. title2 = models.CharField(max_length=100, verbose_name="another name")
  11. created = models.DateTimeField()
  12. def test_from_model(self):
  13. return "nothing"
  14. def test_from_model_with_override(self):
  15. return "nothing"
  16. test_from_model_with_override.short_description = "not What you Expect"
  17. @python_2_unicode_compatible
  18. class Count(models.Model):
  19. num = models.PositiveSmallIntegerField()
  20. parent = models.ForeignKey('self', null=True)
  21. def __str__(self):
  22. return six.text_type(self.num)
  23. class Event(models.Model):
  24. date = models.DateTimeField(auto_now_add=True)
  25. class Location(models.Model):
  26. event = models.OneToOneField(Event, verbose_name='awesome event')
  27. class Guest(models.Model):
  28. event = models.OneToOneField(Event)
  29. name = models.CharField(max_length=255)
  30. class Meta:
  31. verbose_name = "awesome guest"
  32. class EventGuide(models.Model):
  33. event = models.ForeignKey(Event, on_delete=models.DO_NOTHING)