summaryrefslogtreecommitdiff
path: root/repos/models.py
diff options
context:
space:
mode:
authorMark Weiman <mark.weiman@markzz.com>2015-10-11 01:00:38 -0400
committerMark Weiman <mark.weiman@markzz.com>2015-10-11 01:00:38 -0400
commit57aa89824a8dabb631c15af986a39e779d0fe3cb (patch)
tree2df3bf79026e1c544e57375566297bcc7634afa5 /repos/models.py
downloadwebsite-57aa89824a8dabb631c15af986a39e779d0fe3cb.tar.gz
website-57aa89824a8dabb631c15af986a39e779d0fe3cb.zip
inital
Diffstat (limited to 'repos/models.py')
-rw-r--r--repos/models.py45
1 files changed, 45 insertions, 0 deletions
diff --git a/repos/models.py b/repos/models.py
new file mode 100644
index 0000000..3502cc0
--- /dev/null
+++ b/repos/models.py
@@ -0,0 +1,45 @@
+from django.db import models
+
+# Create your models here.
+
+
+class Arch(models.Model):
+ name = models.CharField(max_length=20, unique=True, null=False, blank=False)
+ agnostic = models.BooleanField(default=False)
+
+ def __str__(self):
+ return self.name
+
+
+class PackageType(models.Model):
+ name = models.CharField(max_length=50, null=False, blank=False)
+ operating_system = models.CharField(max_length=50, null=False, blank=False)
+ codename = models.CharField(max_length=50, null=False, blank=True)
+ library = models.CharField(max_length=50, null=True, blank=True)
+
+ def __str__(self):
+ return '%s - %s' % (self.name, self.codename,)
+
+
+class Repository(models.Model):
+ name = models.CharField(max_length=50, null=False, blank=False)
+ package_type = models.ForeignKey(PackageType)
+ arches = models.ManyToManyField(Arch)
+ location = models.CharField(max_length=255, null=False, blank=False)
+
+ def __str__(self):
+ return '%s - %s' % (self.name, self.package_type.codename,)
+
+
+class Package(models.Model):
+ name = models.CharField(max_length=50, null=False, blank=False)
+ repo = models.ForeignKey(Repository)
+ arch = models.ForeignKey(Arch)
+ description = models.TextField()
+ pkgver = models.CharField(max_length=255, null=False, blank=False)
+ pkgrel = models.IntegerField()
+ updated = models.DateField()
+ download = models.URLField()
+
+ def __str__(self):
+ return '%s %s-%d' % (self.name, self.pkgver, self.pkgrel,)