1
0

models.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import datetime
  2. from django.db import models
  3. from django.core.validators import validate_unicode_slug
  4. from django.utils import timezone
  5. # Create your models here.
  6. #class ArticleCatagories(models.Model):
  7. # name = models.CharField(max_length=20)
  8. class Article(models.Model):
  9. title = models.CharField(
  10. max_length=50,
  11. unique=True,
  12. )
  13. CATEGORY_CHOICES = [
  14. ('Linux',
  15. (
  16. ('nx', 'Nginx'),
  17. )
  18. ),
  19. ('ot', 'Other'),
  20. ]
  21. category = models.CharField(
  22. max_length=2,
  23. choices=CATEGORY_CHOICES,
  24. #default=FOOBAR,
  25. )
  26. created = models.DateField(
  27. auto_now_add=True,
  28. editable=False,
  29. )
  30. updated = models.DateField(
  31. auto_now=True,
  32. editable=False,
  33. )
  34. slug = models.SlugField(
  35. db_index=True,
  36. unique=True,
  37. validators=[validate_unicode_slug],
  38. )
  39. description = models.TextField()
  40. keywords = models.CharField(
  41. max_length=50,
  42. )
  43. published = models.BooleanField(
  44. default = False,
  45. )
  46. content = models.TextField()
  47. def __str__(self):
  48. return self.title
  49. def published_this_week(self):
  50. return self.created >= timezone.now() - datetime.timedelta(days=7)
  51. def updated_this_week(self):
  52. return self.updated >= timezone.now() - datetime.timedelta(days=7)