From 1df0e6edd07ad3b276137ad5f1f68d6df97651fd Mon Sep 17 00:00:00 2001 From: Kálmán Viktor <kviktor@cloud.bme.hu> Date: Wed, 20 Nov 2013 16:29:05 +0100 Subject: [PATCH] dashboard: add model manager for active instances --- circle/dashboard/views.py | 2 +- circle/vm/models.py | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/circle/dashboard/views.py b/circle/dashboard/views.py index 81655e7..a53a90f 100644 --- a/circle/dashboard/views.py +++ b/circle/dashboard/views.py @@ -206,7 +206,7 @@ class TemplateDetail(DetailView): class VmList(SingleTableView): template_name = "dashboard/vm-list.html" - model = Instance + queryset = Instance.active.all() table_class = VmListTable table_pagination = False diff --git a/circle/vm/models.py b/circle/vm/models.py index 2b69a29..248ecd5 100644 --- a/circle/vm/models.py +++ b/circle/vm/models.py @@ -9,7 +9,7 @@ from django.contrib.auth.models import User from django.core import signing from django.db.models import (Model, ForeignKey, ManyToManyField, IntegerField, DateTimeField, BooleanField, TextField, - CharField, permalink) + CharField, permalink, Manager) from django.utils import timezone from django.utils.translation import ugettext_lazy as _ @@ -34,6 +34,12 @@ ARCHITECTURES = (('x86_64', 'x86-64 (64 bit)'), VNC_PORT_RANGE = (2000, 65536) # inclusive start, exclusive end +class InstanceActiveManager(Manager): + def get_query_set(self): + return super(InstanceActiveManager, + self).get_query_set().filter(destroyed=None) + + class BaseResourceConfigModel(Model): """Abstract base for models with base resource configuration parameters. @@ -413,6 +419,8 @@ class Instance(AclBase, VirtualMachineDescModel, TimeStampedModel): destroyed = DateTimeField(blank=True, null=True, help_text=_("The virtual machine's time of " "destruction.")) + objects = Manager() + active = InstanceActiveManager() class Meta: ordering = ['pk', ] -- libgit2 0.26.0