From 307e06f319d3208f84867f6efe77eb6d4556af1f Mon Sep 17 00:00:00 2001 From: Scott Baker Date: Tue, 21 May 2013 17:25:56 -0700 Subject: [PATCH] add slice tags --- planetstack/core/admin.py | 6 +++++- planetstack/core/models/__init__.py | 1 + planetstack/core/models/slicetag.py | 14 ++++++++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 planetstack/core/models/slicetag.py diff --git a/planetstack/core/admin.py b/planetstack/core/admin.py index bc49b8a..6e7bbb6 100644 --- a/planetstack/core/admin.py +++ b/planetstack/core/admin.py @@ -65,6 +65,10 @@ class SliceMembershipInline(admin.TabularInline): model = SliceMembership extra = 0 +class SliceTagInline(admin.TabularInline): + model = SliceTag + extra = 0 + class PlainTextWidget(forms.HiddenInput): input_type = 'hidden' @@ -228,7 +232,7 @@ class KeyAdmin(OSModelAdmin): class SliceAdmin(OSModelAdmin): fields = ['name', 'site', 'serviceClass', 'description', 'slice_url'] list_display = ('name', 'site','serviceClass', 'slice_url') - inlines = [SliverInline, SliceMembershipInline] + inlines = [SliverInline, SliceMembershipInline, SliceTagInline] def queryset(self, request): # admins can see all keys. Users can only see slices they belong to. diff --git a/planetstack/core/models/__init__.py b/planetstack/core/models/__init__.py index 179f6f7..56a67ba 100644 --- a/planetstack/core/models/__init__.py +++ b/planetstack/core/models/__init__.py @@ -11,6 +11,7 @@ from .serviceclass import ServiceClass from .serviceresource import ServiceResource from .slice import Slice from .slice import SliceMembership +from .slicetag import SliceTag from .sliver import Sliver from .reservation import ReservedResource from .reservation import Reservation diff --git a/planetstack/core/models/slicetag.py b/planetstack/core/models/slicetag.py new file mode 100644 index 0000000..38343b3 --- /dev/null +++ b/planetstack/core/models/slicetag.py @@ -0,0 +1,14 @@ +import os +from django.db import models +from core.models import PlCoreBase +from core.models import Slice + +class SliceTag(PlCoreBase): + slice = models.ForeignKey(Slice, related_name='tags') + + NAME_CHOICES = (('privatekey', 'Private Key'), ('publickey', 'Public Key')) + name = models.CharField(help_text="The name of this tag", max_length=30, choices=NAME_CHOICES) + value = models.CharField(help_text="The value of this tag", max_length=1024) + + + -- 2.43.0