diff options
author | Mike Crute <mcrute@gmail.com> | 2010-05-27 01:14:08 -0400 |
---|---|---|
committer | Mike Crute <mcrute@gmail.com> | 2010-05-27 01:14:08 -0400 |
commit | 5a68ee32fe6ec7a381a16245f85fde210500dfd7 (patch) | |
tree | 8bdac814a7ff66f0c3aa297a6d3c1f3df191d4db /djangopypi/models.py | |
parent | 93481083e6fa15490584e61a3f6a5638024f9b31 (diff) | |
download | chishop-5a68ee32fe6ec7a381a16245f85fde210500dfd7.tar.bz2 chishop-5a68ee32fe6ec7a381a16245f85fde210500dfd7.tar.xz chishop-5a68ee32fe6ec7a381a16245f85fde210500dfd7.zip |
Adding channel support
Diffstat (limited to 'djangopypi/models.py')
-rw-r--r-- | djangopypi/models.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/djangopypi/models.py b/djangopypi/models.py index d98c4da..3539fb2 100644 --- a/djangopypi/models.py +++ b/djangopypi/models.py | |||
@@ -35,6 +35,22 @@ ARCHITECTURES = ( | |||
35 | UPLOAD_TO = getattr(settings, | 35 | UPLOAD_TO = getattr(settings, |
36 | "DJANGOPYPI_RELEASE_UPLOAD_TO", 'dist') | 36 | "DJANGOPYPI_RELEASE_UPLOAD_TO", 'dist') |
37 | 37 | ||
38 | |||
39 | class Channel(models.Model): | ||
40 | name = models.CharField(max_length=255, unique=True) | ||
41 | |||
42 | class Meta: | ||
43 | verbose_name = _(u"channel") | ||
44 | verbose_name_plural = _(u"channels") | ||
45 | |||
46 | def __unicode__(self): | ||
47 | return self.name | ||
48 | |||
49 | @models.permalink | ||
50 | def get_absolute_url(self): | ||
51 | return ('djangopypi-channel_show_dists', (), {'channel': self.name}) | ||
52 | |||
53 | |||
38 | class Classifier(models.Model): | 54 | class Classifier(models.Model): |
39 | name = models.CharField(max_length=255, unique=True) | 55 | name = models.CharField(max_length=255, unique=True) |
40 | 56 | ||
@@ -82,6 +98,7 @@ class Project(models.Model): | |||
82 | except Release.DoesNotExist: | 98 | except Release.DoesNotExist: |
83 | return None | 99 | return None |
84 | 100 | ||
101 | |||
85 | class Release(models.Model): | 102 | class Release(models.Model): |
86 | version = models.CharField(max_length=32) | 103 | version = models.CharField(max_length=32) |
87 | distribution = models.FileField(upload_to=UPLOAD_TO) | 104 | distribution = models.FileField(upload_to=UPLOAD_TO) |
@@ -92,6 +109,8 @@ class Release(models.Model): | |||
92 | pyversion = models.CharField(max_length=32, blank=True) | 109 | pyversion = models.CharField(max_length=32, blank=True) |
93 | project = models.ForeignKey(Project, related_name="releases") | 110 | project = models.ForeignKey(Project, related_name="releases") |
94 | upload_time = models.DateTimeField(auto_now=True) | 111 | upload_time = models.DateTimeField(auto_now=True) |
112 | channel = models.ForeignKey(Channel, related_name="channels", | ||
113 | blank=True, null=True) | ||
95 | 114 | ||
96 | class Meta: | 115 | class Meta: |
97 | verbose_name = _(u"release") | 116 | verbose_name = _(u"release") |