mirror of
https://github.com/Findus23/RPGnotes.git
synced 2024-09-19 15:43:45 +02:00
31 lines
943 B
Python
31 lines
943 B
Python
from django.contrib.humanize.templatetags.humanize import ordinal
|
|
from django.db import models
|
|
from django.urls import reverse
|
|
from simple_history.models import HistoricalRecords
|
|
|
|
from notes.models import Campaign, Session, DescriptionModel
|
|
|
|
|
|
class IngameDay(DescriptionModel):
|
|
campaign = models.ForeignKey(Campaign, on_delete=models.PROTECT)
|
|
|
|
day = models.PositiveIntegerField()
|
|
sessions = models.ManyToManyField(Session, related_name="ingame_days")
|
|
|
|
created = models.DateTimeField(auto_now_add=True)
|
|
last_modified = models.DateTimeField(auto_now=True)
|
|
history = HistoricalRecords()
|
|
|
|
class Meta:
|
|
ordering = ["-day"]
|
|
unique_together = ["campaign", "day"]
|
|
|
|
def get_absolute_url(self):
|
|
return reverse('daydetail', args=[self.campaign.slug, self.day])
|
|
|
|
@property
|
|
def prettyname(self):
|
|
return ordinal(self.day) + " day"
|
|
|
|
def __str__(self):
|
|
return self.prettyname
|