diff options
author | 2019-11-11 19:55:47 +1000 | |
---|---|---|
committer | 2019-11-11 19:55:47 +1000 | |
commit | afc014eb52b1b9d05753c8722965b6646738639a (patch) | |
tree | 7c23f42a1d6371e4b0069564bf132538909e64e2 /pydis_site/apps/api/models | |
parent | Merge branch 'master' into allauth-user-settings (diff) | |
parent | Merge pull request #278 from python-discord/active-infractions-validation (diff) |
Merge branch 'master' into allauth-user-settings
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: |