Mercurial > public > sg101
annotate user_photos/models.py @ 1150:0e0cd152b86d
WIP convert downloads to V3 design.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Tue, 13 Dec 2016 20:20:24 -0600 |
parents | b6e98717690b |
children |
rev | line source |
---|---|
bgneal@695 | 1 """Models for the user_photos application.""" |
bgneal@695 | 2 |
bgneal@695 | 3 import datetime |
bgneal@695 | 4 |
bgneal@695 | 5 from django.db import models |
bgneal@695 | 6 from django.conf import settings |
bgneal@696 | 7 from django.core.urlresolvers import reverse |
bgneal@695 | 8 |
bgneal@695 | 9 |
bgneal@695 | 10 class Photo(models.Model): |
bgneal@695 | 11 """This model represents data about a user uploaded photo.""" |
bgneal@695 | 12 user = models.ForeignKey(settings.AUTH_USER_MODEL, |
bgneal@695 | 13 related_name='uploaded_photos') |
bgneal@695 | 14 upload_date = models.DateTimeField() |
bgneal@695 | 15 url = models.URLField(max_length=200) |
bgneal@695 | 16 thumb_url = models.URLField(max_length=200, blank=True) |
bgneal@749 | 17 signature = models.CharField(max_length=32, blank=True, db_index=True) |
bgneal@695 | 18 |
bgneal@695 | 19 def __unicode__(self): |
bgneal@695 | 20 return u'Photo by {} on {}'.format(self.user.username, |
bgneal@695 | 21 self.upload_date.strftime('%Y-%m-%d %H:%M:%S')) |
bgneal@695 | 22 |
bgneal@695 | 23 def get_absolute_url(self): |
bgneal@696 | 24 return reverse('user_photos-detail', kwargs={'pk': self.pk}) |
bgneal@695 | 25 |
bgneal@695 | 26 def save(self, *args, **kwargs): |
bgneal@695 | 27 if not self.pk and not self.upload_date: |
bgneal@695 | 28 self.upload_date = datetime.datetime.now() |
bgneal@695 | 29 super(Photo, self).save(*args, **kwargs) |
bgneal@695 | 30 |