| import os |
| from django.db import models |
| from core.models import PlCoreBase |
| from core.models import Service |
| from django.contrib.contenttypes.models import ContentType |
| from django.contrib.contenttypes import generic |
| |
| # Create your models here. |
| |
| class Tag(PlCoreBase): |
| |
| service = models.ForeignKey(Service, related_name='tags', help_text="The Service this Tag is associated with") |
| |
| name = models.SlugField(help_text="The name of this tag", max_length=128) |
| value = models.CharField(help_text="The value of this tag", max_length=1024) |
| |
| # The required fields to do a ObjectType lookup, and object_id assignment |
| content_type = models.ForeignKey(ContentType) |
| object_id = models.PositiveIntegerField() |
| content_object = generic.GenericForeignKey('content_type', 'object_id') |
| |
| def __unicode__(self): |
| return self.name |
| |
| |
| def can_update(self, user): |
| if user.is_admin: |
| return True |
| return False |
| |
| @staticmethod |
| def select_by_user(user): |
| return Tag.objects.all() |