diff options
| author | 2018-11-18 21:03:06 +0100 | |
|---|---|---|
| committer | 2018-11-18 21:03:06 +0100 | |
| commit | 9e9fde3fa4a159e3883760c5ca9fe51b4d6593de (patch) | |
| tree | 952b0ae3c51a884aaeb32672b9a6bfd68caafb1d /api/models.py | |
| parent | Set up markdown & Dockerfile lints. (diff) | |
Add the abstract `Message` model.
Diffstat (limited to '')
| -rw-r--r-- | api/models.py | 31 | 
1 files changed, 31 insertions, 0 deletions
diff --git a/api/models.py b/api/models.py index 9990e266..3ba0ac5c 100644 --- a/api/models.py +++ b/api/models.py @@ -210,6 +210,37 @@ class Member(ModelReprMixin, models.Model):          return f"{self.name}#{self.discriminator}" +class Message(ModelReprMixin, models.Model): +    id = models.BigIntegerField( +        primary_key=True, +        help_text="The message ID as taken from Discord.", +        validators=( +            MinValueValidator( +                limit_value=0, +                message="Message IDs cannot be negative." +            ), +        ) +    ) +    author = models.ForeignKey( +        Member, +        on_delete=models.CASCADE, +        help_text="The author of this message." +    ) +    content = models.CharField( +        max_length=2_000, +        help_text="The content of this message, taken from Discord." +    ) +    embeds = pgfields.ArrayField( +        pgfields.JSONField( +            validators=(validate_tag_embed,) +        ), +        help_text="Embeds attached to this message." +    ) + +    class Meta: +        abstract = True + +  class Tag(ModelReprMixin, models.Model):      """A tag providing (hopefully) useful information."""  |