Advertisement
mickymiseck

model_taggin

Aug 28th, 2012
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.42 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. """
  3. Room Model and Manager
  4. """
  5.  
  6. from django.db import models
  7. from utils.models import AuditableModel
  8.  
  9. from easy_thumbnails.fields import ThumbnailerField
  10. from taggit.managers import TaggableManager
  11.  
  12. from mvm.models import Museum
  13. from mvm.models import ActorTaggedItem, IdentityTaggedItem, RoleTaggedItem, PlaceTaggedItem
  14.  
  15. class RoomManager(models.Manager):
  16.     pass
  17.  
  18.  
  19. class Room(AuditableModel, models.Model):
  20.  
  21.     name                = models.CharField('nombre', max_length=200)
  22.     general_description = models.TextField('descripcion general', blank=True)
  23.     museum              = models.ForeignKey(Museum, verbose_name='museo')
  24.     is_enabled          = models.BooleanField('esta activado?', default=True)
  25.     cover_picture       = ThumbnailerField(u'Imagen de portada', upload_to='rooms/')
  26.  
  27.     actor               = TaggableManager(through=ActorTaggedItem)
  28.     actor.rel.related_name = "mvm_actor_room"
  29.  
  30.     identity            = TaggableManager(through=IdentityTaggedItem)
  31.     identity.rel.related_name = "mvm_identity_room"
  32.  
  33.     role                = TaggableManager(through=RoleTaggedItem)
  34.     role.rel.related_name = "mvm_role_room"
  35.  
  36.     place               = TaggableManager(through=PlaceTaggedItem)
  37.     place.rel.related_name = "mvm_place_room"
  38.  
  39.  
  40.     objects = RoomManager()
  41.  
  42.     class Meta:
  43.         app_label = 'mvm'
  44.  
  45.     def __unicode__(self):
  46.         return self.name
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement