diff options
| author | 2019-11-03 21:14:14 +0100 | |
|---|---|---|
| committer | 2019-11-03 21:14:14 +0100 | |
| commit | 8cc1f03297598629b27fb0b1adab82160505e879 (patch) | |
| tree | 2f9484aaf0041fd9b8da50e3e6c77cb2f9c386d4 /pydis_site/apps/api/models/bot | |
| parent | Merge pull request #293 from python-discord/update-dependency-pinning (diff) | |
| parent | Resolve migration merge conflicts (diff) | |
Merge pull request #278 from python-discord/active-infractions-validation
Validation for active infractions
Diffstat (limited to 'pydis_site/apps/api/models/bot')
| -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: |