Mercurial > public > sg101
view banners/models.py @ 752:95f4e7f352fd
For Django 1.6: contrib auth password reset confirm view signature changed.
The uidb64 parameter was previously base 36 encoded and named uidb36.
Had to update urls.py. While I was in there I decided to make the
password reset email use the {% url %} tag to be more resilient if the
url changes.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Wed, 01 Jan 2014 19:52:07 -0600 |
parents | ee87ea74d46b |
children |
line wrap: on
line source
""" Models for the banners application. """ import datetime from django.db import models class Campaign(models.Model): """ A model to represent an ad or banner campaign. """ name = models.CharField(max_length=128) slug = models.SlugField() creation_date = models.DateTimeField(blank=True) def __unicode__(self): return self.name class Meta: ordering = ['name'] def save(self, *args, **kwargs): if not self.pk and not self.creation_date: self.creation_date = datetime.datetime.now() super(Campaign, self).save(*args, **kwargs) def banner_upload_to(instance, filename): """ An "upload_to" function for the Banner model. """ return "banners/%s/%s" % (instance.campaign.slug, filename) class Banner(models.Model): """ A model to represent a banner. """ campaign = models.ForeignKey(Campaign) image = models.ImageField(upload_to=banner_upload_to) description = models.CharField(max_length=128) creation_date = models.DateTimeField(blank=True) def __unicode__(self): return self.description class Meta: ordering = ['-creation_date'] def save(self, *args, **kwargs): if not self.pk and not self.creation_date: self.creation_date = datetime.datetime.now() super(Banner, self).save(*args, **kwargs)