From 9373680612b4aae3de32f53d45685297a3b1a685 Mon Sep 17 00:00:00 2001 From: Tobias Kunze Date: Sun, 16 Mar 2025 09:32:18 +0100 Subject: [PATCH] Fix model display in admin --- src/servala/core/models/organization.py | 16 ++++++++++++++++ src/servala/core/models/service.py | 24 ++++++++++++++++++++++++ src/servala/core/models/user.py | 8 ++++++++ 3 files changed, 48 insertions(+) diff --git a/src/servala/core/models/organization.py b/src/servala/core/models/organization.py index d9fd27d..ce0b43d 100644 --- a/src/servala/core/models/organization.py +++ b/src/servala/core/models/organization.py @@ -25,6 +25,10 @@ class Organization(models.Model): verbose_name=_("Members"), ) + class Meta: + verbose_name = _("Organization") + verbose_name_plural = _("Organizations") + def __str__(self): return self.name @@ -41,6 +45,10 @@ class BillingEntity(models.Model): max_length=100, blank=True, verbose_name=_("ERP reference") ) + class Meta: + verbose_name = _("Billing entity") + verbose_name_plural = _("Billing entities") + def __str__(self): return self.name @@ -55,6 +63,10 @@ class OrganizationOrigin(models.Model): name = models.CharField(max_length=100, verbose_name=_("Name")) description = models.TextField(blank=True, verbose_name=_("Description")) + class Meta: + verbose_name = _("Organization origin") + verbose_name_plural = _("Organization origins") + def __str__(self): return self.name @@ -90,5 +102,9 @@ class OrganizationMembership(models.Model): verbose_name=_("Role"), ) + class Meta: + verbose_name = _("Organization membership") + verbose_name_plural = _("Organization memberships") + def __str__(self): return f"{self.user} in {self.organization} as {self.role}" diff --git a/src/servala/core/models/service.py b/src/servala/core/models/service.py index 7e68351..7cf2edf 100644 --- a/src/servala/core/models/service.py +++ b/src/servala/core/models/service.py @@ -25,6 +25,10 @@ class ServiceCategory(models.Model): verbose_name=_("Parent"), ) + class Meta: + verbose_name = _("Service category") + verbose_name_plural = _("Service categories") + def __str__(self): return self.name @@ -49,6 +53,10 @@ class Service(models.Model): verbose_name=_("Category"), ) + class Meta: + verbose_name = _("Service") + verbose_name_plural = _("Services") + def __str__(self): return self.name @@ -67,6 +75,10 @@ class ControlPlane(models.Model): verbose_name=_("Cloud provider"), ) + class Meta: + verbose_name = _("Control plane") + verbose_name_plural = _("Control planes") + def __str__(self): return self.name @@ -86,6 +98,10 @@ class CloudProvider(models.Model): ) external_links = models.JSONField(blank=True, verbose_name=_("External links")) + class Meta: + verbose_name = _("Cloud provider") + verbose_name_plural = _("Cloud providers") + def __str__(self): return self.name @@ -109,6 +125,10 @@ class Plan(models.Model): verbose_name=_("Service offering"), ) + class Meta: + verbose_name = _("Plan") + verbose_name_plural = _("Plans") + def __str__(self): return self.name @@ -136,3 +156,7 @@ class ServiceOffering(models.Model): related_name="offerings", verbose_name=_("Control plane"), ) + + class Meta: + verbose_name = _("Service offering") + verbose_name_plural = _("Service offerings") diff --git a/src/servala/core/models/user.py b/src/servala/core/models/user.py index 558390f..66f420d 100644 --- a/src/servala/core/models/user.py +++ b/src/servala/core/models/user.py @@ -10,6 +10,10 @@ class UserManager(BaseUserManager): use_in_migrations = True + class Meta: + verbose_name = _("User manager") + verbose_name_plural = _("User managers") + def create_user(self, email, password, **extra_fields): if not email: raise ValueError("Please provide an email address.") @@ -54,6 +58,10 @@ class User(AbstractBaseUser): EMAIL_FIELD = "email" USERNAME_FIELD = "email" + class Meta: + verbose_name = _("User") + verbose_name_plural = _("Users") + def __str__(self): if self.first_name and self.last_name: return f"{self.first_name} {self.last_name}"