1
0
mirror of https://github.com/netbox-community/netbox.git synced 2024-05-10 07:54:54 +00:00

Introduced TopologyMap

This commit is contained in:
Jeremy Stretch
2016-04-08 14:57:54 -04:00
parent 42e16db8b4
commit 29fd04026d
7 changed files with 94 additions and 11 deletions

View File

@@ -4,6 +4,9 @@ from django.http import HttpResponse
from django.template import Template, Context
from dcim.models import Site
GRAPH_TYPE_INTERFACE = 100
GRAPH_TYPE_PROVIDER = 200
GRAPH_TYPE_SITE = 300
@@ -68,3 +71,23 @@ class ExportTemplate(models.Model):
filename += '.{}'.format(self.file_extension)
response['Content-Disposition'] = 'attachment; filename="{}"'.format(filename)
return response
class TopologyMap(models.Model):
name = models.CharField(max_length=50, unique=True)
slug = models.SlugField(unique=True)
site = models.ForeignKey(Site, related_name='topology_maps', blank=True, null=True)
device_patterns = models.TextField()
description = models.CharField(max_length=100, blank=True)
class Meta:
ordering = ['name']
def __unicode__(self):
return self.name
@property
def device_sets(self):
if not self.device_patterns:
return None
return [line.strip() for line in self.device_patterns.split('\n')]