display count of different installed versions in modules list

This commit is contained in:
Frédéric Péters 2015-07-18 10:53:22 +02:00
parent 29a5d9f950
commit f2fa643f3a
2 changed files with 13 additions and 1 deletions

View File

@ -117,6 +117,13 @@ class Module(models.Model):
p.wait()
return stdout
def get_all_installed_versions(self):
versions = set()
for service in InstalledService.objects.all():
version = self.get_installed_version(service.platform, service.service)
if version and version.version.version:
versions.add(version.version.version)
return versions
class Version(models.Model):
module = models.ForeignKey('Module')

View File

@ -7,7 +7,12 @@
{% block content %}
<ul>
{% for module in modules %}
<li>{{ module.name }} : <a href="{{ module.name }}/">deployments</a></li>
{% with versions=module.get_all_installed_versions %}
{% if versions %}
<li>{{ module.name }} : <a href="{{ module.name }}/">deployments</a>
({{versions|length}} versions)</li>
{% endif %}
{% endwith %}
{% endfor %}
</ul>