shiftregister/shiftregister/importer/models.py

23 lines
695 B
Python

from django.db import models
from shiftregister.app.models import *
class Calendar(models.Model):
url = models.URLField(primary_key=True, max_length=1000)
needs_fallback = models.BooleanField(default=False, editable=True)
has_errors = models.BooleanField(default=False, editable=False)
name = models.CharField(max_length=255, null=True, blank=True)
def update(self):
# break circular import
from .importer import import_calendar
self.has_errors = not import_calendar(self)
self.save()
class Event(Shift):
uuid = models.UUIDField(primary_key=True, editable=False)
calendar = models.ForeignKey(Calendar, on_delete=models.CASCADE)