forked from expo/troggle
n_delete=... soon to be required
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import os
|
||||
import urllib.parse
|
||||
from urllib.parse import urljoin
|
||||
import re
|
||||
|
||||
from django.db import models
|
||||
@@ -16,8 +16,8 @@ from django.core.urlresolvers import reverse
|
||||
|
||||
class SurvexDirectory(models.Model):
|
||||
path = models.CharField(max_length=200)
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True)
|
||||
primarysurvexfile = models.ForeignKey('SurvexFile', related_name='primarysurvexfile', blank=True, null=True)
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True,on_delete=models.CASCADE)
|
||||
primarysurvexfile = models.ForeignKey('SurvexFile', related_name='primarysurvexfile', blank=True, null=True,on_delete=models.CASCADE)
|
||||
# could also include files in directory but not referenced
|
||||
|
||||
class Meta:
|
||||
@@ -26,8 +26,8 @@ class SurvexDirectory(models.Model):
|
||||
|
||||
class SurvexFile(models.Model):
|
||||
path = models.CharField(max_length=200)
|
||||
survexdirectory = models.ForeignKey("SurvexDirectory", blank=True, null=True)
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True)
|
||||
survexdirectory = models.ForeignKey("SurvexDirectory", blank=True, null=True,on_delete=models.CASCADE)
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True,on_delete=models.CASCADE)
|
||||
|
||||
class Meta:
|
||||
ordering = ('id',)
|
||||
@@ -53,7 +53,7 @@ class SurvexFile(models.Model):
|
||||
|
||||
|
||||
class SurvexEquate(models.Model):
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True)
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True,on_delete=models.CASCADE)
|
||||
|
||||
class SurvexStationLookUpManager(models.Manager):
|
||||
def lookup(self, name):
|
||||
@@ -63,8 +63,8 @@ class SurvexStationLookUpManager(models.Manager):
|
||||
|
||||
class SurvexStation(models.Model):
|
||||
name = models.CharField(max_length=100)
|
||||
block = models.ForeignKey('SurvexBlock')
|
||||
equate = models.ForeignKey('SurvexEquate', blank=True, null=True)
|
||||
block = models.ForeignKey('SurvexBlock',on_delete=models.CASCADE)
|
||||
equate = models.ForeignKey('SurvexEquate', blank=True, null=True,on_delete=models.CASCADE)
|
||||
objects = SurvexStationLookUpManager()
|
||||
x = models.FloatField(blank=True, null=True)
|
||||
y = models.FloatField(blank=True, null=True)
|
||||
@@ -82,10 +82,10 @@ class SurvexStation(models.Model):
|
||||
return r
|
||||
|
||||
# class SurvexLeg(models.Model):
|
||||
# block = models.ForeignKey('SurvexBlock')
|
||||
# #title = models.ForeignKey('SurvexTitle')
|
||||
# stationfrom = models.ForeignKey('SurvexStation', related_name='stationfrom')
|
||||
# stationto = models.ForeignKey('SurvexStation', related_name='stationto')
|
||||
# block = models.ForeignKey('SurvexBlock',on_delete=models.CASCADE)
|
||||
# #title = models.ForeignKey('SurvexTitle',on_delete=models.CASCADE)
|
||||
# stationfrom = models.ForeignKey('SurvexStation', related_name='stationfrom',on_delete=models.CASCADE)
|
||||
# stationto = models.ForeignKey('SurvexStation', related_name='stationto',on_delete=models.CASCADE)
|
||||
# tape = models.FloatField()
|
||||
# compass = models.FloatField()
|
||||
# clino = models.FloatField()
|
||||
@@ -111,25 +111,25 @@ class SurvexBlockLookUpManager(models.Manager):
|
||||
class SurvexBlock(models.Model):
|
||||
objects = SurvexBlockLookUpManager()
|
||||
name = models.CharField(max_length=100)
|
||||
parent = models.ForeignKey('SurvexBlock', blank=True, null=True)
|
||||
parent = models.ForeignKey('SurvexBlock', blank=True, null=True,on_delete=models.CASCADE)
|
||||
# text = models.TextField()
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True)
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True,on_delete=models.CASCADE)
|
||||
|
||||
date = models.DateField(blank=True, null=True)
|
||||
expeditionday = models.ForeignKey("ExpeditionDay", null=True)
|
||||
expedition = models.ForeignKey('Expedition', blank=True, null=True)
|
||||
expeditionday = models.ForeignKey("ExpeditionDay", null=True,on_delete=models.CASCADE)
|
||||
expedition = models.ForeignKey('Expedition', blank=True, null=True,on_delete=models.CASCADE)
|
||||
|
||||
survexfile = models.ForeignKey("SurvexFile", blank=True, null=True)
|
||||
survexfile = models.ForeignKey("SurvexFile", blank=True, null=True,on_delete=models.CASCADE)
|
||||
# begin_char = models.IntegerField() # code for where in the survex data files this block sits
|
||||
survexpath = models.CharField(max_length=200) # the path for the survex stations
|
||||
|
||||
survexscansfolder = models.ForeignKey("SurvexScansFolder", null=True)
|
||||
survexscansfolder = models.ForeignKey("SurvexScansFolder", null=True,on_delete=models.CASCADE)
|
||||
#refscandir = models.CharField(max_length=100)
|
||||
|
||||
legsall = models.IntegerField() # summary data for this block
|
||||
legssplay = models.IntegerField() # summary data for this block
|
||||
legssurfc = models.IntegerField() # summary data for this block
|
||||
totalleglength = models.FloatField()
|
||||
legsall = models.IntegerField(null=True) # summary data for this block
|
||||
legssplay = models.IntegerField(null=True) # summary data for this block
|
||||
legssurfc = models.IntegerField(null=True) # summary data for this block
|
||||
totalleglength = models.FloatField(null=True)
|
||||
|
||||
class Meta:
|
||||
ordering = ('id',)
|
||||
@@ -163,9 +163,9 @@ class SurvexBlock(models.Model):
|
||||
return list(self.expeditionday.survexblock_set.all()).index(self)
|
||||
|
||||
class SurvexTitle(models.Model):
|
||||
survexblock = models.ForeignKey('SurvexBlock')
|
||||
survexblock = models.ForeignKey('SurvexBlock',on_delete=models.CASCADE)
|
||||
title = models.CharField(max_length=200)
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True)
|
||||
cave = models.ForeignKey('Cave', blank=True, null=True,on_delete=models.CASCADE)
|
||||
|
||||
#
|
||||
# member of a SurvexBlock
|
||||
@@ -183,14 +183,14 @@ ROLE_CHOICES = (
|
||||
)
|
||||
|
||||
class SurvexPersonRole(models.Model):
|
||||
survexblock = models.ForeignKey('SurvexBlock')
|
||||
survexblock = models.ForeignKey('SurvexBlock',on_delete=models.CASCADE)
|
||||
nrole = models.CharField(choices=ROLE_CHOICES, max_length=200, blank=True, null=True)
|
||||
# increasing levels of precision
|
||||
personname = models.CharField(max_length=100)
|
||||
person = models.ForeignKey('Person', blank=True, null=True)
|
||||
personexpedition = models.ForeignKey('PersonExpedition', blank=True, null=True)
|
||||
persontrip = models.ForeignKey('PersonTrip', blank=True, null=True)
|
||||
expeditionday = models.ForeignKey("ExpeditionDay", null=True)
|
||||
person = models.ForeignKey('Person', blank=True, null=True,on_delete=models.CASCADE)
|
||||
personexpedition = models.ForeignKey('PersonExpedition', blank=True, null=True,on_delete=models.CASCADE)
|
||||
persontrip = models.ForeignKey('PersonTrip', blank=True, null=True,on_delete=models.CASCADE)
|
||||
expeditionday = models.ForeignKey("ExpeditionDay", null=True,on_delete=models.CASCADE)
|
||||
|
||||
def __str__(self):
|
||||
return str(self.person) + " - " + str(self.survexblock) + " - " + str(self.nrole)
|
||||
@@ -203,7 +203,7 @@ class SurvexScansFolder(models.Model):
|
||||
ordering = ('walletname',)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return urllib.parse.urljoin(settings.URL_ROOT, reverse('surveyscansfolder', kwargs={"path":re.sub("#", "%23", self.walletname)}))
|
||||
return urljoin(settings.URL_ROOT, reverse('surveyscansfolder', kwargs={"path":re.sub("#", "%23", self.walletname)}))
|
||||
|
||||
def __str__(self):
|
||||
return str(self.walletname) + " (Survey Scans Folder)"
|
||||
@@ -211,13 +211,13 @@ class SurvexScansFolder(models.Model):
|
||||
class SurvexScanSingle(models.Model):
|
||||
ffile = models.CharField(max_length=200)
|
||||
name = models.CharField(max_length=200)
|
||||
survexscansfolder = models.ForeignKey("SurvexScansFolder", null=True)
|
||||
survexscansfolder = models.ForeignKey("SurvexScansFolder", null=True,on_delete=models.CASCADE)
|
||||
|
||||
class Meta:
|
||||
ordering = ('name',)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return urllib.parse.urljoin(settings.URL_ROOT, reverse('surveyscansingle', kwargs={"path":re.sub("#", "%23", self.survexscansfolder.walletname), "file":self.name}))
|
||||
return urljoin(settings.URL_ROOT, reverse('surveyscansingle', kwargs={"path":re.sub("#", "%23", self.survexscansfolder.walletname), "file":self.name}))
|
||||
|
||||
def __str__(self):
|
||||
return "Survey Scan Image: " + str(self.name) + " in " + str(self.survexscansfolder)
|
||||
|
||||
Reference in New Issue
Block a user