From 4b9d67eddae80e7df9b91b5de741b68817dacb79 Mon Sep 17 00:00:00 2001 From: Bach Dániel <bd@ik.bme.hu> Date: Tue, 7 Oct 2014 16:54:57 +0200 Subject: [PATCH] dashboard: fix MassMigrationView --- circle/dashboard/templates/dashboard/_vm-mass-migrate.html | 8 +++++--- circle/dashboard/views/vm.py | 6 ++++++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/circle/dashboard/templates/dashboard/_vm-mass-migrate.html b/circle/dashboard/templates/dashboard/_vm-mass-migrate.html index 6038785..bb68c06 100644 --- a/circle/dashboard/templates/dashboard/_vm-mass-migrate.html +++ b/circle/dashboard/templates/dashboard/_vm-mass-migrate.html @@ -1,6 +1,7 @@ {% extends "dashboard/mass-operate.html" %} {% load i18n %} {% load sizefieldtags %} +{% load crispy_forms_tags %} {% block formfields %} @@ -11,20 +12,20 @@ <label for="migrate-to-none"> <strong>{% trans "Reschedule" %}</strong> </label> - <input id="migrate-to-none" type="radio" name="node" value="" style="float: right;" checked="checked"> + <input id="migrate-to-none" type="radio" name="to_node" value="" style="float: right;" checked="checked"> <span class="vm-migrate-node-property"> {% trans "This option will reschedule each virtual machine to the optimal node." %} </span> <div style="clear: both;"></div> </div> </li> - {% for n in nodes %} + {% for n in form.fields.to_node.queryset.all %} <li class="panel panel-default mass-migrate-node"> <div class="panel-body"> <label for="migrate-to-{{n.pk}}"> <strong>{{ n }}</strong> </label> - <input id="migrate-to-{{n.pk}}" type="radio" name="node" value="{{ n.pk }}" style="float: right;"/> + <input id="migrate-to-{{n.pk}}" type="radio" name="to_node" value="{{ n.pk }}" style="float: right;"/> <span class="vm-migrate-node-property">{% trans "CPU load" %}: {{ n.cpu_usage }}</span> <span class="vm-migrate-node-property">{% trans "RAM usage" %}: {{ n.byte_ram_usage|filesize }}/{{ n.ram_size|filesize }}</span> <div style="clear: both;"></div> @@ -32,5 +33,6 @@ </li> {% endfor %} </ul> + {{ form.live_migration|as_crispy_field }} <hr /> {% endblock %} diff --git a/circle/dashboard/views/vm.py b/circle/dashboard/views/vm.py index 7277f30..5428bdf 100644 --- a/circle/dashboard/views/vm.py +++ b/circle/dashboard/views/vm.py @@ -762,6 +762,12 @@ class MassOperationView(OperationView): self.check_auth() if extra is None: extra = {} + + if hasattr(self, 'form_class'): + form = self.form_class(self.request.POST, **self.get_form_kwargs()) + if form.is_valid(): + extra.update(form.cleaned_data) + self._call_operations(extra) if request.is_ajax(): store = messages.get_messages(request) -- libgit2 0.26.0