models.py 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. from django.db import models
  2. from django.conf import settings
  3. # Create your models here.
  4. class Application(models.Model):
  5. PAYMENT_CHOICES = [
  6. ("наличные", "Наличные"),
  7. ("перевод", "Перевод")
  8. ]
  9. STATUS_CHOICES = [
  10. ("новая", "Новая"),
  11. ("в процессе обучения", "В процессе обучения"),
  12. ("обучение завершено", "Обучение завершено")
  13. ]
  14. user = models.ForeignKey(
  15. settings.AUTH_USER_MODEL,
  16. on_delete=models.CASCADE,
  17. related_name="application",
  18. verbose_name="Пользователь"
  19. )
  20. course_name = models.CharField("Название курса", max_length=255)
  21. status = models.CharField("Статус", max_length=20, choices=STATUS_CHOICES)
  22. payment_method = models.CharField("Способ оплаты", max_length=20, choices=PAYMENT_CHOICES)
  23. date_start = models.DateField("Желаемая дата старта обучения", max_length=20)
  24. created_at = models.DateTimeField(auto_now_add=True)
  25. class Meta:
  26. verbose_name = "Заявка"
  27. verbose_name_plural = "Заявки"
  28. ordering = ["-created_at"]
  29. def __str__(self):
  30. return f"{self.course_name} - {self.user.username}"
  31. class Review(models.Model):
  32. user = models.ForeignKey(
  33. settings.AUTH_USER_MODEL,
  34. on_delete=models.CASCADE,
  35. ordering = ["-created_at"]
  36. )
  37. text = models.TextField("Текст отзыва", max_length=255)
  38. created_at = models.DateTimeField(auto_now_add=True)
  39. class Meta:
  40. verbose_name = "Отзыв"
  41. verbose_name_plural = "Отзывы"
  42. ordering = ["-created_at"]
  43. def __str__(self):
  44. return f"Отзыв {self.user.username}"