Я должен вести инвентаризацию серверов и их модулей памяти и приводов. Я создал три таблицы. Я хочу иметь возможность получать всю информацию о сервере, включая информацию о памяти и диске, и отображать ее на одной странице.
class Server(models.Model):
Name = models.CharField(max_length=25)
ServiceTag = models.CharField(primary_key=True,max_length=12) #Uniquely identifies each server
def __unicode__(self):
return u'%s %s ' % (self.Name, self.ServiceTag)
class MemoryModule(models.Model):
Manufacturer = models.CharField(max_length=15)
Size = models.CharField(max_length=15)
server = models.ForeignKey(Server, max_length=12)
mems = MemoryManager()
def __unicode__(self):
return u'%s %s' % (self.Manufacturer, self.Size)
class Drive(models.Model):
Manufacturer = models.CharField(max_length=15)
Size = models.CharField(max_length=15)
server = models.ForeignKey(Server, max_length=12)
drvs = DriveManager()
def __unicode__(self):
return u'%s %s %s %s %s' % (self.Manufacturer, self.Size)
Я подумывал добавить следующих "менеджеров":
class MemoryManager(models.Manager):
def get_query_set(self):
return super(MemoryManager, self).get_query_set().filter(server='CC98361')
class DriveManager(models.Manager):
def get_query_set(self):
return super(DriveManager, self).get_query_set().filter(server='CC98361')
... чтобы следующее генерировало модули памяти и накопители, связанные со значением служебного тега:
MemoryModule.mems.all()
Drive.drvs.all()
а. Это точный подход
б. если да, то как мне отобразить "MemoryModule.mems.all () и Drive.drvs.all () в шаблоне?