from django.db import models from entries.models import Entry from model_utils.models import TimeStampedModel class State: PENDING = "p" VALID = "v" INVALID = "i" DELETED = "d" CHOICES = ( (PENDING, "pending"), (VALID, "valid"), (INVALID, "invalid"), (DELETED, "deleted"), ) class Webmention(TimeStampedModel): entry = models.ForeignKey(Entry, on_delete=models.CASCADE) source = models.CharField(max_length=255) target = models.CharField(max_length=255) state = models.CharField(choices=State.CHOICES, default=State.PENDING, max_length=1) class Meta: default_related_name = "mentions" unique_together = ("source", "target")