diff options
Diffstat (limited to 'api/models.py')
-rw-r--r-- | api/models.py | 18 |
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 " |