diff options
Diffstat (limited to 'core/models.py')
-rw-r--r-- | core/models.py | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/core/models.py b/core/models.py index f65efed..9529582 100644 --- a/core/models.py +++ b/core/models.py @@ -153,7 +153,7 @@ class Person(TroggleModel): for personexpedition in self.personexpedition_set.all(): if not personexpedition.is_guest: - print(personexpedition.expedition.year) + # print(personexpedition.expedition.year) notability += Decimal(1) / (max_expo_val - int(personexpedition.expedition.year)) return notability @@ -248,7 +248,7 @@ class LogbookEntry(TroggleModel): ("html", "Html style logbook") ) - date = models.DateField()#MJG wants to turn this into a datetime such that multiple Logbook entries on the same day can be ordered.ld() + date = models.DateTimeField()#MJG wants to turn this into a datetime such that multiple Logbook entries on the same day can be ordered.ld() expeditionday = models.ForeignKey("ExpeditionDay", null=True)#MJG wants to KILL THIS (redundant information) expedition = models.ForeignKey(Expedition,blank=True,null=True) # yes this is double- title = models.CharField(max_length=settings.MAX_LOGBOOK_ENTRY_TITLE_LENGTH) @@ -377,12 +377,14 @@ class CaveSlug(models.Model): cave = models.ForeignKey('Cave') slug = models.SlugField(max_length=50, unique = True) primary = models.BooleanField(default=False) - + + def __unicode__(self): + return self.slug class Cave(TroggleModel): # too much here perhaps, official_name = models.CharField(max_length=160) - area = models.ManyToManyField(Area, blank=True, null=True) + area = models.ManyToManyField(Area, blank=True) kataster_code = models.CharField(max_length=20,blank=True,null=True) kataster_number = models.CharField(max_length=10,blank=True, null=True) unofficial_number = models.CharField(max_length=60,blank=True, null=True) @@ -535,13 +537,15 @@ class Cave(TroggleModel): def getCaveByReference(reference): areaname, code = reference.split("-", 1) - print(areaname, code) + #print(areaname, code) area = Area.objects.get(short_name = areaname) - print(area) + #print(area) foundCaves = list(Cave.objects.filter(area = area, kataster_number = code).all()) + list(Cave.objects.filter(area = area, unofficial_number = code).all()) print(list(foundCaves)) - assert len(foundCaves) == 1 - return foundCaves[0] + if len(foundCaves) == 1: + return foundCaves[0] + else: + return False class OtherCaveName(TroggleModel): name = models.CharField(max_length=160) @@ -706,9 +710,9 @@ class CaveDescription(TroggleModel): short_name = models.CharField(max_length=50, unique = True) long_name = models.CharField(max_length=200, blank=True, null=True) description = models.TextField(blank=True,null=True) - linked_subcaves = models.ManyToManyField("NewSubCave", blank=True,null=True) - linked_entrances = models.ManyToManyField("Entrance", blank=True,null=True) - linked_qms = models.ManyToManyField("QM", blank=True,null=True) + linked_subcaves = models.ManyToManyField("NewSubCave", blank=True) + linked_entrances = models.ManyToManyField("Entrance", blank=True) + linked_qms = models.ManyToManyField("QM", blank=True) def __unicode__(self): if self.long_name: @@ -782,7 +786,7 @@ photoFileStorage = FileSystemStorage(location=settings.PHOTOS_ROOT, base_url=set class DPhoto(TroggleImageModel): caption = models.CharField(max_length=1000,blank=True,null=True) contains_logbookentry = models.ForeignKey(LogbookEntry,blank=True,null=True) - contains_person = models.ManyToManyField(Person,blank=True,null=True) + contains_person = models.ManyToManyField(Person,blank=True) file = models.ImageField(storage=photoFileStorage, upload_to='.',) is_mugshot = models.BooleanField(default=False) contains_cave = models.ForeignKey(Cave,blank=True,null=True) @@ -856,8 +860,9 @@ class Survey(TroggleModel): integrated_into_main_sketch_on = models.DateField(blank=True,null=True) integrated_into_main_sketch_by = models.ForeignKey('Person' ,related_name='integrated_into_main_sketch_by', blank=True,null=True) rendered_image = models.ImageField(upload_to='renderedSurveys',blank=True,null=True) + def __unicode__(self): - return self.expedition.year+"#"+"%02d" % int(self.wallet_number) + return self.expedition.year+"#" + "%s%02d" % (self.wallet_letter, int(self.wallet_number)) def notes(self): return self.scannedimage_set.filter(contents='notes') |