Mercurial > public > sg101
annotate user_photos/models.py @ 695:2d35e5f97a99
In process work for #50. Started a user_photos application.
Initial commit with model, form, and view. The view doesn't save the photo yet.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sat, 07 Sep 2013 20:50:46 -0500 |
parents | |
children | b2a8fde3173a |
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@695 | 7 |
bgneal@695 | 8 |
bgneal@695 | 9 class Photo(models.Model): |
bgneal@695 | 10 """This model represents data about a user uploaded photo.""" |
bgneal@695 | 11 user = models.ForeignKey(settings.AUTH_USER_MODEL, |
bgneal@695 | 12 related_name='uploaded_photos') |
bgneal@695 | 13 upload_date = models.DateTimeField() |
bgneal@695 | 14 url = models.URLField(max_length=200) |
bgneal@695 | 15 thumb_url = models.URLField(max_length=200, blank=True) |
bgneal@695 | 16 |
bgneal@695 | 17 def __unicode__(self): |
bgneal@695 | 18 return u'Photo by {} on {}'.format(self.user.username, |
bgneal@695 | 19 self.upload_date.strftime('%Y-%m-%d %H:%M:%S')) |
bgneal@695 | 20 |
bgneal@695 | 21 def get_absolute_url(self): |
bgneal@695 | 22 return self.url |
bgneal@695 | 23 |
bgneal@695 | 24 def save(self, *args, **kwargs): |
bgneal@695 | 25 if not self.pk and not self.upload_date: |
bgneal@695 | 26 self.upload_date = datetime.datetime.now() |
bgneal@695 | 27 super(Photo, self).save(*args, **kwargs) |
bgneal@695 | 28 |