service listing

This commit is contained in:
Tobias Brunner 2025-01-27 14:58:23 +01:00
parent ea44f6f54a
commit b367012d5c
No known key found for this signature in database
22 changed files with 615 additions and 7 deletions

44
hub/services/models.py Normal file
View file

@ -0,0 +1,44 @@
from django.db import models
class CloudProvider(models.Model):
name = models.CharField(max_length=100)
description = models.TextField(blank=True)
def __str__(self):
return self.name
class Country(models.Model):
name = models.CharField(max_length=100)
code = models.CharField(max_length=2)
class Meta:
verbose_name_plural = "Countries"
def __str__(self):
return self.name
class ServiceLevel(models.Model):
name = models.CharField(max_length=100)
description = models.TextField()
response_time = models.CharField(max_length=50)
def __str__(self):
return self.name
class Service(models.Model):
name = models.CharField(max_length=200)
description = models.TextField()
cloud_provider = models.ForeignKey(CloudProvider, on_delete=models.CASCADE)
service_level = models.ForeignKey(ServiceLevel, on_delete=models.CASCADE)
countries = models.ManyToManyField(Country)
price = models.DecimalField(max_digits=10, decimal_places=2)
features = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
def __str__(self):
return self.name