diff options
author | Philip Sargent <philip.sargent@klebos.com> | 2021-05-05 00:35:10 +0100 |
---|---|---|
committer | Philip Sargent <philip.sargent@klebos.com> | 2021-05-05 00:35:10 +0100 |
commit | d374779c473a65fca4740d83942bae24c10f683d (patch) | |
tree | 76805079a17b1570a87c996665b9748c3c9fd1f8 /core/models | |
parent | 44b6770b6a562bb8a7d453ddfd1b0b547013a958 (diff) | |
download | troggle-d374779c473a65fca4740d83942bae24c10f683d.tar.gz troggle-d374779c473a65fca4740d83942bae24c10f683d.tar.bz2 troggle-d374779c473a65fca4740d83942bae24c10f683d.zip |
dwg upload and django admin extra search
Diffstat (limited to 'core/models')
-rw-r--r-- | core/models/caves.py | 16 | ||||
-rw-r--r-- | core/models/survex.py | 53 |
2 files changed, 27 insertions, 42 deletions
diff --git a/core/models/caves.py b/core/models/caves.py index 259854d..7bbe21b 100644 --- a/core/models/caves.py +++ b/core/models/caves.py @@ -432,7 +432,7 @@ class LogbookEntry(TroggleModel): # #return super(LogbookEntry, self).__init__(*args, **kwargs) # works in py3.5 # #return TroggleModel.__init__(*args, **kwargs) # fails in py3.5, runtime fail in 3.8 - def cave(self): # Why didn't he just make this a foreign key to Cave ? Replaces __egtattrribute__ sillyness. + def cave(self): # Why didn't he just make this a foreign key to Cave ? Replaces __getattrribute__ sillyness. c = CaveSlug.objects.get(slug=self.cave_slug, primary=True).cave return c @@ -540,13 +540,13 @@ class PersonTrip(TroggleModel): def __str__(self): return f'{self.personexpedition} ({self.logbook_entry.date})' -scansFileStorage = FileSystemStorage(location=settings.SURVEY_SCANS, base_url=settings.SURVEYS_URL) -def get_scan_path(instance, filename): - year=instance.survey.expedition.year - number=str(instance.survey.wallet_number) - if str(instance.survey.wallet_letter) != "None": - number=str(instance.survey.wallet_letter) + number #two strings formatting because convention is 2009#01 or 2009#X01 - return os.path.join('./',year,year+r'#'+number,str(instance.contents)+str(instance.number_in_wallet)+r'.jpg') +# scansFileStorage = FileSystemStorage(location=settings.SURVEY_SCANS, base_url=settings.SURVEYS_URL) +# def get_scan_path(instance, filename): + # year=instance.survey.expedition.year + # number=str(instance.survey.wallet_number) + # if str(instance.survey.wallet_letter) != "None": + # number=str(instance.survey.wallet_letter) + number #two strings formatting because convention is 2009#01 or 2009#X01 + # return os.path.join('./',year,year+r'#'+number,str(instance.contents)+str(instance.number_in_wallet)+r'.jpg') Gcavelookup = None Gcave_count = None diff --git a/core/models/survex.py b/core/models/survex.py index 50173f4..1273a8b 100644 --- a/core/models/survex.py +++ b/core/models/survex.py @@ -15,10 +15,10 @@ class SurvexDirectory(models.Model): class Meta: ordering = ('id',) + verbose_name_plural = "Survex directories" - # Don't change from the default as that breaks troggle webpages and internal referencing! - # def __str__(self): - # return "[SurvexDirectory:"+str(self.path) + "-" + str(self.primarysurvexfile.path) + "-" + str(self.cave)+"]" + def __str__(self): + return "[SurvexDirectory:"+str(self.path) + "-" + str(self.primarysurvexfile.path) + "-" + str(self.cave)+"]" class SurvexFile(models.Model): @@ -53,7 +53,9 @@ class SurvexFile(models.Model): survexdirectory.save() self.survexdirectory = survexdirectory self.save() - + + def __str__(self): + return self.path class SurvexStationLookUpManager(models.Manager): def lookup(self, name): @@ -122,11 +124,11 @@ class SurvexBlock(models.Model): class Meta: ordering = ('id',) - # Don't change from the original as that breaks troggle webpages and internal referencing! - # def __str__(self): - # return "[SurvexBlock:"+ str(self.name) + "-path:" + \ - # str(self.survexpath) + "-cave:" + \ - # str(self.cave) + "]" + def __str__(self): + return "[SurvexBlock:"+ str(self.name) + "-path:" + \ + str(self.survexpath) + "-cave:" + \ + str(self.cave) + "]" + def __str__(self): return self.name and str(self.name) or 'no name' @@ -134,40 +136,19 @@ class SurvexBlock(models.Model): return True def GetPersonroles(self): - '''To do: excise the 'role' bit of this while retaining personrole - which is used in some later logic - + ''' But apparently never used !? ''' res = [ ] for personrole in self.survexpersonrole_set.order_by('personexpedition'): - # if res and res[-1]['person'] == personrole.personexpedition.person: - # res[-1]['roles'] += ", " + str(personrole.nrole) - # else: - # res.append({'person':personrole.personexpedition.person, 'expeditionyear':personrole.personexpedition.expedition.year, 'roles':str(personrole.nrole)}) res.append({'person':personrole.personexpedition.person, 'expeditionyear':personrole.personexpedition.expedition.year}) return res def DayIndex(self): return list(self.expeditionday.survexblock_set.all()).index(self) -# -# member of a SurvexBlock -# -# ROLE_CHOICES = ( - # ('insts','Instruments'), - # ('dog','Other'), - # ('notes','Notes'), - # ('pics','Pictures'), - # ('tape','Tape measure'), - # ('useless','Useless'), - # ('helper','Helper'), - # ('disto','Disto'), - # ('consultant','Consultant'), - # ) class SurvexPersonRole(models.Model): 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,on_delete=models.SET_NULL) @@ -176,7 +157,7 @@ class SurvexPersonRole(models.Model): expeditionday = models.ForeignKey("ExpeditionDay", null=True,on_delete=models.SET_NULL) def __str__(self): - return str(self.person) + " - " + str(self.survexblock) + " - " + str(self.nrole) + return str(self.person) + " - " + str(self.survexblock) class Wallet(models.Model): fpath = models.CharField(max_length=200) @@ -189,7 +170,7 @@ class Wallet(models.Model): return urljoin(settings.URL_ROOT, reverse('singlewallet', kwargs={"path":re.sub("#", "%23", self.walletname)})) def __str__(self): - return str(self.walletname) + " (Survey Scans Folder)" + return str(self.walletname) + " (Wallet)" class SingleScan(models.Model): ffile = models.CharField(max_length=200) @@ -216,4 +197,8 @@ class DrawingFile(models.Model): survexfiles = models.ManyToManyField("SurvexFile") # direct link to SVX files - not populated yet class Meta: - ordering = ('dwgpath',)
\ No newline at end of file + ordering = ('dwgpath',) + + def __str__(self): + return "Drawing File: " + str(self.dwgname) + " (" + str(self.filesize) + " bytes)" +
\ No newline at end of file |