Files
@ 44d0ea6f2b8e
Branch filter:
Location: symposion_app/symposion/schedule/models.py - annotation
44d0ea6f2b8e
1.4 KiB
text/x-python
Moved colspan to slot in TimeTable
143dbbce2891 143dbbce2891 143dbbce2891 77dc781e0d8b 143dbbce2891 143dbbce2891 143dbbce2891 143dbbce2891 143dbbce2891 0a4e626dfe9b 143dbbce2891 143dbbce2891 143dbbce2891 143dbbce2891 77dc781e0d8b 143dbbce2891 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 143dbbce2891 143dbbce2891 77dc781e0d8b 143dbbce2891 77dc781e0d8b 143dbbce2891 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 77dc781e0d8b 143dbbce2891 143dbbce2891 143dbbce2891 143dbbce2891 143dbbce2891 77dc781e0d8b 77dc781e0d8b 143dbbce2891 143dbbce2891 143dbbce2891 143dbbce2891 77dc781e0d8b 77dc781e0d8b 143dbbce2891 f3e9cc9a5db3 f3e9cc9a5db3 f3e9cc9a5db3 f3e9cc9a5db3 f3e9cc9a5db3 143dbbce2891 | from django.db import models
from symposion.conference.models import Section
from symposion.schedule.utils import InlineSet
class Schedule(models.Model):
section = models.OneToOneField(Section)
slug = models.SlugField(unique=True)
class Day(models.Model):
schedule = models.ForeignKey(Schedule)
date = models.DateField()
class Meta:
unique_together = [("schedule", "date")]
class Room(models.Model):
schedule = models.ForeignKey(Schedule)
name = models.CharField(max_length=65)
order = models.PositiveIntegerField()
class SlotKind(models.Model):
"""
A slot kind represents what kind a slot is. For example, a slot can be a
break, lunch, or X-minute talk.
"""
schedule = models.ForeignKey(Schedule)
label = models.CharField(max_length=50)
class Slot(models.Model):
day = models.ForeignKey(Day)
room_set = models.TextField(db_column="rooms")
kind = models.ForeignKey(SlotKind)
start = models.TimeField()
end = models.TimeField()
@property
def rooms(self):
attr = "_rooms"
if not hasattr(self, attr):
class RoomInlineSet(InlineSet):
def consective_count(self):
return len(self)
value = RoomInlineSet(obj=self, field="room_set", delimiter=" ")
setattr(self, attr, value)
return getattr(self, attr)
|