TKO/services/backend/tko/models.py

43 lines
1.2 KiB
Python
Raw Normal View History

2025-02-16 21:10:50 +01:00
from django.db import models
2025-03-09 11:20:03 +01:00
2025-02-16 21:10:50 +01:00
class Contact(models.Model):
2025-02-19 20:51:19 +01:00
name = models.CharField(max_length=100)
2025-02-16 21:10:50 +01:00
email = models.EmailField()
phone_number = models.CharField(max_length=16)
content = models.TextField()
2025-02-19 20:51:19 +01:00
def __str__(self):
return f"{self.name}, {self.email}, {self.phone_number}"
2025-02-16 21:10:50 +01:00
class Article(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
2025-03-09 11:20:03 +01:00
image = models.FileField(upload_to="images/%Y", default="default.png", blank=True)
2025-03-05 16:21:16 +01:00
date = models.DateField(auto_now_add=True)
2025-02-16 21:10:50 +01:00
author = models.CharField(max_length=100)
active_to = models.DateField(null=True, blank=True) # do not show some invitation after this date
2025-02-19 20:51:19 +01:00
def __str__(self):
return self.title
2025-02-16 21:10:50 +01:00
2025-03-09 11:20:03 +01:00
class ArticleImage(models.Model):
article = models.ForeignKey(Article, on_delete=models.CASCADE, related_name='images')
image = models.FileField(upload_to="images/%Y")
def __str__(self):
return f"Image for {self.article.title}, {self.article.date}"
2025-02-16 21:10:50 +01:00
class Event(models.Model):
title = models.CharField(max_length=100)
start_date = models.DateTimeField()
end_date = models.DateTimeField()
color = models.CharField(max_length=100)
2025-02-19 20:51:19 +01:00
def __str__(self):
return self.title