from django.db import models from django.utils.translation import gettext_lazy as _ # Create your models here. class Storages(models.Model): name = models.CharField( _("name"), max_length=20, error_messages={"required": _("No pool name has been entered")}, ) status = models.IntegerField(_("status")) type = models.CharField(_("type"), max_length=100) size = models.IntegerField(_("size")) volumes = models.IntegerField(_("volumes")) class Meta: managed = False def __str__(self): return f"{self.name}" class Volume(models.Model): name = models.CharField(_("name"), max_length=128) type = models.CharField( _("format"), max_length=12, choices=(("qcow2", "qcow2 (recommended)"), ("qcow", "qcow"), ("raw", "raw")), ) allocation = models.IntegerField(_("allocation")) size = models.IntegerField(_("size")) class Meta: managed = False verbose_name_plural = "Volumes" def __str__(self): return f"{self.name}" class Storage(models.Model): state = models.IntegerField(_("state")) size = models.IntegerField(_("size")) free = models.IntegerField(_("free")) status = models.CharField(_("status"), max_length=128) path = models.CharField(_("path"), max_length=128) type = models.CharField(_("type"), max_length=128) autostart = models.BooleanField(_("autostart")) volumes = models.ForeignKey( Volume, related_name="storage_volumes", on_delete=models.DO_NOTHING ) class Meta: managed = False def __str__(self): return f"{self.path}"