Make lots of changes to models
[frozenviper.git] / viper / listing / models.py
blob6d18754a700fcf9478013bfd1b0349594b20f80d
1 from django.db import models
2 from django.template.defaultfilters import slugify
4 class City(models.Model):
5 name = models.CharField(max_length=20)
6 slug = models.SlugField(max_length=20, editable=False)
8 def save(self, **kwargs):
9 self.slug = slugify(self.name)
10 super(City, self).save(**kwargs)
12 def absolute_url_for(self):
13 return '/listing/%s' % self.slug
15 class Location(models.Model):
16 name = models.CharField(max_length=20)
17 slug = models.SlugField(max_length=20, editable=False)
18 city = models.ForeignKey(City)
20 def absolute_url_for(self):
21 return '/listing/%s/%s' % (self.city.slug, self.slug)
23 class Listing(models.Model):
24 title = models.CharField("Title", max_length=250)
25 description = models.TextField('Description')
26 available = models.DateField('Date Available')
27 created = models.DateTimeField('DateTime Created', auto_now_add=True)
28 updated = models.DateTimeField('DateTime Last Updated', auto_now=True)
29 city = models.ForeignKey(City)
30 location = models.ForeignKey(Location)
32 def absolute_url_for(self):
33 return '/listing/db/%s' % self.id