diff options
author | 2019-11-07 19:08:23 +0100 | |
---|---|---|
committer | 2019-11-07 19:08:23 +0100 | |
commit | 8e689ac24c8965f8285d1a4fdadbc0d593fd7c0c (patch) | |
tree | 8a3adc7a67e38cfbcbe7056f0277d6c882764e8a /pydis_site/apps/api/models | |
parent | Block PATCH and PUT methods (diff) | |
parent | Merge pull request #278 from python-discord/active-infractions-validation (diff) |
Merge branch 'master' into #222-offensive-msg-autodeletion
Diffstat (limited to 'pydis_site/apps/api/models')
-rw-r--r-- | pydis_site/apps/api/models/bot/infraction.py | 7 | ||||
-rw-r--r-- | pydis_site/apps/api/models/bot/user.py | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/pydis_site/apps/api/models/bot/infraction.py b/pydis_site/apps/api/models/bot/infraction.py index dfb32a97..108fd3a2 100644 --- a/pydis_site/apps/api/models/bot/infraction.py +++ b/pydis_site/apps/api/models/bot/infraction.py @@ -71,3 +71,10 @@ class Infraction(ModelReprMixin, models.Model): """Defines the meta options for the infraction model.""" ordering = ['-inserted_at'] + constraints = ( + models.UniqueConstraint( + fields=["user", "type"], + condition=models.Q(active=True), + name="unique_active_infraction_per_type_per_user" + ), + ) diff --git a/pydis_site/apps/api/models/bot/user.py b/pydis_site/apps/api/models/bot/user.py index 21617dc4..5140d2bf 100644 --- a/pydis_site/apps/api/models/bot/user.py +++ b/pydis_site/apps/api/models/bot/user.py @@ -50,7 +50,7 @@ class User(ModelReprMixin, models.Model): def __str__(self): """Returns the name and discriminator for the current user, for display purposes.""" - return f"{self.name}#{self.discriminator}" + return f"{self.name}#{self.discriminator:0>4}" @property def top_role(self) -> Role: |