openmumbai/openmumbai/places/models.py
2012-08-12 19:37:57 +05:30

113 lines
3.3 KiB
Python

from base.models import BaseModel
from django.contrib.gis.db import models
class OpenSpace(BaseModel):
ward = models.CharField(max_length=4, blank=True)
reservation = models.CharField(max_length=16, blank=True)
pk_serial = models.IntegerField(null=True, blank=True) #serial acc to PK Das excel sheets
occupied = models.BooleanField(default=False)
name = models.CharField(max_length=1024, blank=True)
address = models.TextField(blank=True)
cts = models.CharField(max_length=512, null=True, blank=True)
area = models.DecimalField(max_digits=15, decimal_places=3)
geometry = models.GeometryField(null=True, blank=True)
def __unicode__(self):
return "%s %s %s" % (self.ward, self.reservation, self.address,)
class AreaModel(BaseModel):
pk_serial = models.IntegerField(null=True, blank=True)
name = models.CharField(max_length=1024, blank=True)
address = models.TextField(blank=True)
area = models.DecimalField(max_digits=15, decimal_places=3)
geometry = models.GeometryField(null=True, blank=True)
def __unicode__(self):
return self.address
class Forest(AreaModel):
pass
class Fort(AreaModel):
pass
class HillForest(AreaModel):
pass
class Meta:
verbose_name_plural = "Hills and Forests"
verbose_name = "Hill / Forest"
class Waterfront(AreaModel):
pass
class Beach(AreaModel):
pass
class Meta:
verbose_name_plural = "Beaches"
class DevelopmentModel(BaseModel):
pk_serial = models.IntegerField(null=True, blank=True)
name = models.CharField(max_length=1024, blank=True)
address = models.TextField(blank=True)
area = models.DecimalField(max_digits=15, decimal_places=3)
proposed_development_area = models.DecimalField(max_digits=15, decimal_places=3)
including_development_area = models.DecimalField(max_digits=15, decimal_places=3)
geometry = models.GeometryField(null=True, blank=True)
def __unicode__(self):
return "%d: %s" % (self.pk_serial, self.name,)
class River(DevelopmentModel):
pass
class CreekWetland(DevelopmentModel):
pass
class Meta:
verbose_name = "Creek / Wetland"
verbose_name_plural = "Creeks and Wetlands"
class WaterBody(DevelopmentModel):
pass
class Meta:
verbose_name = "Water body"
verbose_name_plural = "Water bodies"
class Nullah(DevelopmentModel):
pass
class MillLand(BaseModel):
pk_serial = models.IntegerField(null=True, blank=True)
name = models.CharField(max_length=1024, blank=True)
address = models.TextField(blank=True)
old_name = models.CharField(max_length=1024, blank=True)
owner = models.CharField(max_length=1024, blank=True)
geometry = models.GeometryField(null=True, blank=True)
def __unicode__(self):
return self.name
class PedestrianAvenue(BaseModel):
pk_serial = models.IntegerField(null=True, blank=True)
name = models.CharField(max_length=1024, blank=True)
length = models.DecimalField(max_digits=5, decimal_places=2)
geometry = models.LineStringField(null=True, blank=True)
def __unicode__(self):
return self.name
data_models = [OpenSpace, Forest, Fort, HillForest, Waterfront, Beach, River, CreekWetland, WaterBody, Nullah, MillLand, PedestrianAvenue]