aboutsummaryrefslogtreecommitdiffstats
path: root/api/models.py
diff options
context:
space:
mode:
Diffstat (limited to 'api/models.py')
-rw-r--r--api/models.py18
1 files changed, 12 insertions, 6 deletions
diff --git a/api/models.py b/api/models.py
index ded9ebeb..68833328 100644
--- a/api/models.py
+++ b/api/models.py
@@ -92,11 +92,13 @@ class SnakeName(ModelReprMixin, models.Model):
name = models.CharField(
primary_key=True,
max_length=100,
- help_text="The regular name for this snake, e.g. 'Python'."
+ help_text="The regular name for this snake, e.g. 'Python'.",
+ validators=[RegexValidator(regex=r'^([^0-9])+$')]
)
scientific = models.CharField(
max_length=150,
- help_text="The scientific name for this snake, e.g. 'Python bivittatus'."
+ help_text="The scientific name for this snake, e.g. 'Python bivittatus'.",
+ validators=[RegexValidator(regex=r'^([^0-9])+$')]
)
def __str__(self):
@@ -167,8 +169,8 @@ class Role(ModelReprMixin, models.Model):
return self.name
-class Member(ModelReprMixin, models.Model):
- """A member of our Discord server."""
+class User(ModelReprMixin, models.Model):
+ """A Discord user."""
id = models.BigIntegerField( # noqa
primary_key=True,
@@ -205,6 +207,10 @@ class Member(ModelReprMixin, models.Model):
Role,
help_text="Any roles this user has on our server."
)
+ in_guild = models.BooleanField(
+ default=True,
+ help_text="Whether this user is in our server."
+ )
def __str__(self):
return f"{self.name}#{self.discriminator}"
@@ -222,7 +228,7 @@ class Message(ModelReprMixin, models.Model):
)
)
author = models.ForeignKey(
- Member,
+ User,
on_delete=models.CASCADE,
help_text="The author of this message."
)
@@ -255,7 +261,7 @@ class Message(ModelReprMixin, models.Model):
class MessageDeletionContext(ModelReprMixin, models.Model):
actor = models.ForeignKey(
- Member,
+ User,
on_delete=models.CASCADE,
help_text=(
"The original actor causing this deletion. Could be the author "