Mercurial > public > sg101
view gpp/podcast/models.py @ 145:71cb4208dc98
Tweak to #30, admin dashboard. Because of a bug in Django (9568), my dashboard appears on the login page. To get around this, pass in the user to the templatetag, so it can do a 'if user.is_staff' check. Also tweaked the HTML and CSS to show non-zero pending items in red. Shortened the pending item titles for readability.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Wed, 09 Dec 2009 00:03:10 +0000 |
parents | 1ed461fd2030 |
children | 76ad86454ce9 |
line wrap: on
line source
"""Models for the podcast application.""" from django.db import models EXPLICIT_CHOICES = ( ('yes', 'Yes'), ('no', 'No'), ('clean', 'Clean'), ) class Channel(models.Model): """Model to represent the Channel properties""" title = models.CharField(max_length=255) link = models.URLField(verify_exists=False) language = models.CharField(max_length=16) copyright = models.CharField(max_length=255) subtitle = models.CharField(max_length=255) author = models.CharField(max_length=64) description = models.CharField(max_length=255) owner_name = models.CharField(max_length=64) owner_email = models.EmailField() image = models.ImageField(upload_to='podcast') category = models.CharField(max_length=64) explicit = models.CharField(max_length=8, choices=EXPLICIT_CHOICES) keywords = models.CharField(max_length=255) def __unicode__(self): return self.title class Item(models.Model): """Model to represent a channel item""" channel = models.ForeignKey(Channel) title = models.CharField(max_length=255) author = models.CharField(max_length=255) subtitle = models.CharField(max_length=255) summary = models.TextField() enclosure_url = models.URLField(verify_exists=False) alt_enclosure_url = models.URLField(verify_exists=False, blank=True) enclosure_length = models.IntegerField() enclosure_type = models.CharField(max_length=32) guid = models.CharField(max_length=255) pubdate = models.DateTimeField() duration = models.CharField(max_length=16) keywords = models.CharField(max_length=255) explicit = models.CharField(max_length=8, choices=EXPLICIT_CHOICES) @models.permalink def get_absolute_url(self): return ('podcast.views.detail', [str(self.id)]) def __unicode__(self): return self.title class Meta: ordering = ('-pubdate', )