summaryrefslogtreecommitdiff
path: root/commcrawler/models.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2019-07-31 10:46:50 +0200
committerÉtienne Loks <etienne@peacefrogs.net>2019-07-31 10:46:50 +0200
commitd2e3ce3fe1bca021190c8257367e8a444596724f (patch)
tree73d50da3dddea117777ecfeaad6926db0920b2c9 /commcrawler/models.py
parent345a41be0318da980422ee74a67c363008d4de8d (diff)
downloadComm-on-net-d2e3ce3fe1bca021190c8257367e8a444596724f.tar.bz2
Comm-on-net-d2e3ce3fe1bca021190c8257367e8a444596724f.zip
Models refactoring
Diffstat (limited to 'commcrawler/models.py')
-rw-r--r--commcrawler/models.py93
1 files changed, 2 insertions, 91 deletions
diff --git a/commcrawler/models.py b/commcrawler/models.py
index c15ce7e..bf73ce3 100644
--- a/commcrawler/models.py
+++ b/commcrawler/models.py
@@ -3,96 +3,7 @@ import datetime
from django.db import models
from django.utils.translation import ugettext_lazy as _
-
-class AreaType(models.Model):
- name = models.CharField(_("Name"), max_length=200)
-
- class Meta:
- verbose_name = _("Area type")
- verbose_name_plural = _("Area types")
- ordering = ("name", )
-
- def __str__(self):
- return self.name
-
-
-class Area(models.Model):
- name = models.CharField(verbose_name=_("Name"), max_length=200)
- area_type = models.ForeignKey(
- AreaType, on_delete=models.CASCADE, verbose_name=_("Type"))
- population = models.IntegerField(verbose_name=_("Population"), blank=True,
- null=True)
- reference = models.CharField(
- verbose_name=_("Reference"), max_length=100, blank=True, null=True,
- help_text=_("For instance, INSEE code for towns")
- )
- parent = models.ForeignKey("Area", verbose_name=_("Parent"),
- blank=True, null=True)
-
- class Meta:
- verbose_name = _("Area")
- verbose_name_plural = _("Areas")
- ordering = ("name", )
-
- def __str__(self):
- if not self.parent:
- return self.name
- return "{} / {}".format(self.parent, self.name)
-
-
-class OrganizationType(models.Model):
- name = models.CharField(_("Name"), max_length=200)
- parent = models.ForeignKey("OrganizationType", verbose_name=_("Parent"),
- blank=True, null=True)
-
- class Meta:
- verbose_name = _("Organization type")
- verbose_name_plural = _("Organization types")
- ordering = ("parent__name", "name", )
-
- def __str__(self):
- if not self.parent:
- return self.name
- return "{} / {}".format(self.parent, self.name)
-
-
-class Organization(models.Model):
- name = models.CharField(verbose_name=_("Name"), max_length=200)
- area = models.ForeignKey(
- Area, on_delete=models.SET_NULL, verbose_name=_("Area"), blank=True,
- null=True
- )
- organization_type = models.ForeignKey(
- OrganizationType, on_delete=models.CASCADE, verbose_name=_("Type"))
- address = models.TextField(verbose_name=_("Address"), blank=True, null=True)
-
- class Meta:
- verbose_name = _("Organization")
- verbose_name_plural = _("Organizations")
- ordering = ("name", )
-
- def __str__(self):
- if not self.area:
- return "{} ({})".format(
- self.name, self.organization_type)
- return "{} - {} ({})".format(
- self.name, self.area, self.organization_type)
-
-
-class Target(models.Model):
- name = models.CharField(verbose_name=_("Name"), max_length=200)
- url = models.URLField(verbose_name=_("URL"), blank=True, null=True)
- organization = models.ForeignKey(
- Organization, verbose_name=_("Organization"), blank=True,
- null=True, on_delete=models.SET_NULL)
-
- class Meta:
- verbose_name = _("Target")
- verbose_name_plural = _("Targets")
- ordering = ("name",)
-
- def __str__(self):
- return "{} ({})".format(self.name, self.organization)
+from commorganization.models import Target
class Crawl(models.Model):
@@ -108,7 +19,7 @@ class Crawl(models.Model):
ended = models.DateTimeField(
verbose_name=_("End date"), blank=True, null=True)
status = models.CharField(max_length=1, choices=STATUS, default='C')
- targets = models.ManyToManyField("Target", blank=True)
+ targets = models.ManyToManyField(Target, blank=True)
class Meta:
verbose_name = _("Crawl")