from django.db import models from django.contrib.contenttypes.models import ContentType class TaggedItem(models.Model): tag = models.SlugField() content_type = models.ForeignKey(ContentType) object_id = models.PositiveIntegerField() content_object = models.GenericForeignKey() class Meta: ordering = ["tag"] class Admin: js = ["js/MochiKit/MochiKit.js", "js/add_tag.js"] list_display = ('tag', 'get_content_info') def __str__(self): return self.tag def get_content_info(self): return self.content_type.model.capitalize() def get_absolute_url(self): return "/tags/%s/" % (self.tag)