DB structure reworked little bit more
This commit is contained in:
@@ -1,12 +1,10 @@
|
|||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
from .models import YearData
|
from .models import YearData
|
||||||
from .models import MonthData
|
from .models import MonthData
|
||||||
from .models import DayData
|
|
||||||
from .models import Event
|
from .models import Event
|
||||||
from .models import CalendarData
|
from .models import CalendarData
|
||||||
|
|
||||||
admin.site.register(YearData)
|
admin.site.register(YearData)
|
||||||
admin.site.register(MonthData)
|
admin.site.register(MonthData)
|
||||||
admin.site.register(DayData)
|
|
||||||
admin.site.register(Event)
|
admin.site.register(Event)
|
||||||
admin.site.register(CalendarData)
|
admin.site.register(CalendarData)
|
||||||
|
|||||||
+14
-30
@@ -39,41 +39,25 @@ class MonthData(models.Model):
|
|||||||
return f'({self.number}, {self.name}, {self.folkname}, {self.is_oneday}, {self.is_leap_month})'
|
return f'({self.number}, {self.name}, {self.folkname}, {self.is_oneday}, {self.is_leap_month})'
|
||||||
|
|
||||||
|
|
||||||
class DayData(models.Model):
|
class CalendarData(models.Model):
|
||||||
number = models.SmallIntegerField('Number', unique=True, validators=[
|
current_day = models.SmallIntegerField('Number', unique=True, validators=[
|
||||||
|
MinValueValidator(1),
|
||||||
|
MaxValueValidator(30),
|
||||||
|
])
|
||||||
|
current_month = models.ForeignKey(MonthData, on_delete=models.CASCADE)
|
||||||
|
current_year = models.ForeignKey(YearData, on_delete=models.CASCADE)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f'({self.current_day}, {self.current_month}, {self.current_year})'
|
||||||
|
|
||||||
|
|
||||||
|
class Event(models.Model):
|
||||||
|
day = models.SmallIntegerField('Number', unique=True, validators=[
|
||||||
MinValueValidator(1),
|
MinValueValidator(1),
|
||||||
MaxValueValidator(30),
|
MaxValueValidator(30),
|
||||||
])
|
])
|
||||||
month = models.ForeignKey(MonthData, on_delete=models.CASCADE)
|
month = models.ForeignKey(MonthData, on_delete=models.CASCADE)
|
||||||
year = models.ForeignKey(YearData, on_delete=models.CASCADE)
|
year = models.ForeignKey(YearData, on_delete=models.CASCADE)
|
||||||
|
|
||||||
def __str__(self):
|
|
||||||
return f'({self.number, self.month})'
|
|
||||||
|
|
||||||
|
|
||||||
class CalendarData(models.Model):
|
|
||||||
current_day = models.ForeignKey(DayData, on_delete=models.CASCADE)
|
|
||||||
|
|
||||||
def __str__(self):
|
|
||||||
return f'({self.current_day})'
|
|
||||||
|
|
||||||
@property
|
|
||||||
def current_month(self):
|
|
||||||
try:
|
|
||||||
return getattr(self.current_day, 'month')
|
|
||||||
except AttributeError:
|
|
||||||
return None
|
|
||||||
|
|
||||||
@property
|
|
||||||
def current_year(self):
|
|
||||||
try:
|
|
||||||
return getattr(self.current_day, 'year')
|
|
||||||
except AttributeError:
|
|
||||||
return None
|
|
||||||
|
|
||||||
|
|
||||||
class Event(models.Model):
|
|
||||||
day = models.ForeignKey(DayData, on_delete=models.CASCADE)
|
|
||||||
time = models.TimeField('Time')
|
time = models.TimeField('Time')
|
||||||
title = models.CharField('Title', max_length=250)
|
title = models.CharField('Title', max_length=250)
|
||||||
description = models.TextField('Description', max_length=2500)
|
description = models.TextField('Description', max_length=2500)
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if day == calendar_data.current_day.number and year_data == calendar_data.current_year and month == calendar_data.current_month %}
|
{% if day == calendar_data.current_day and year_data == calendar_data.current_year and month == calendar_data.current_month %}
|
||||||
<td class="current">
|
<td class="current">
|
||||||
{% else %}
|
{% else %}
|
||||||
<td>
|
<td>
|
||||||
|
|||||||
@@ -4,7 +4,6 @@ from django.http import HttpResponseNotFound
|
|||||||
|
|
||||||
from .models import YearData
|
from .models import YearData
|
||||||
from .models import MonthData
|
from .models import MonthData
|
||||||
from .models import DayData
|
|
||||||
from .models import CalendarData
|
from .models import CalendarData
|
||||||
from .models import Event
|
from .models import Event
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user