''' Created on Aug 4, 2010 @author: leifj ''' from django.db import models from coip.apps.name.models import Name from django.contrib.contenttypes import generic from django.contrib.contenttypes.models import ContentType class Link(models.Model): content_type = models.ForeignKey(ContentType) object_id = models.PositiveIntegerField() content_object = generic.GenericForeignKey('content_type', 'object_id') url = models.CharField(max_length=255) tag = models.CharField(max_length=255) text = models.CharField(max_length=255) timecreated = models.DateTimeField(auto_now_add=True) lastupdated = models.DateTimeField(auto_now=True) class Meta: unique_together = ('content_type','object_id','url','tag') def __unicode__(self): return "%s:%s (%s) on %s" % (self.tag,self.url,self.text,self.name) def add_link(o,url,tag,text): typ = ContentType.objects.get_for_model(o) r,cr = Link.objects.get_or_create(object_id=o.id,content_type=typ,url=url,tag=tag) return r