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}'