summaryrefslogtreecommitdiffstats
path: root/core/models/caves.py
diff options
context:
space:
mode:
authorPhilip Sargent <philip.sargent@klebos.com>2022-07-05 15:38:23 +0300
committerPhilip Sargent <philip.sargent@klebos.com>2022-07-05 15:38:23 +0300
commit779afc2f2ae84957517e3df22e69d95bf3852887 (patch)
tree1f2ff9e28aaa2baad103b701f41c967cb08029df /core/models/caves.py
parent33eb91346c3bdeeae900ea5a8442a50edbf53aa4 (diff)
downloadtroggle-779afc2f2ae84957517e3df22e69d95bf3852887.tar.gz
troggle-779afc2f2ae84957517e3df22e69d95bf3852887.tar.bz2
troggle-779afc2f2ae84957517e3df22e69d95bf3852887.zip
QM report pages now not crashing, working..
Diffstat (limited to 'core/models/caves.py')
-rw-r--r--core/models/caves.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/core/models/caves.py b/core/models/caves.py
index 7deaca1..4e221e7 100644
--- a/core/models/caves.py
+++ b/core/models/caves.py
@@ -183,7 +183,9 @@ class Cave(TroggleModel):
most folks to maintain and is not really necessary. Need to do a proper search for the cave.
Seems pretty broken - all needs re-doing more cleanly.
'''
- return QM.objects.filter(found_by__cave_slug=self.slug)
+ #return QM.objects.filter(found_by__cave_slug=self.slug)
+ return QM.objects.filter(cave=self)
+
def new_QM_number(self, year=datetime.date.today().year):
"""Given a cave and the current year, returns the next QM number."""
@@ -482,7 +484,9 @@ class LogbookEntry(TroggleModel):
class QM(TroggleModel):
"""This is based on qm.csv in trunk/expoweb/1623/204 which has the fields:
"Number","Grade","Area","Description","Page reference","Nearest station","Completion description","Comment"
+ Note that there is NO LINK TO THE CAVE that the QM is in !
"""
+ cave = models.ForeignKey(Cave, related_name='QMs',blank=True, null=True,on_delete=models.SET_NULL )
found_by = models.ForeignKey(LogbookEntry, related_name='QMs_found',blank=True, null=True,on_delete=models.SET_NULL )
ticked_off_by = models.ForeignKey(LogbookEntry, related_name='QMs_ticked_off',blank=True, null=True,on_delete=models.SET_NULL)
number = models.IntegerField(help_text="this is the sequential number in the year", )
@@ -503,7 +507,7 @@ class QM(TroggleModel):
comment=models.TextField(blank=True,null=True)
def __str__(self):
- return f'{self.nearest_station_name}, {self.code()}-{self.grade}'
+ return f'{self.code()}'
def code(self):
if self.found_by:
@@ -513,7 +517,7 @@ class QM(TroggleModel):
def get_absolute_url(self):
#return settings.URL_ROOT + '/cave/' + self.found_by.cave.kataster_number + '/' + str(self.found_by.date.year) + '-' + '%02d' %self.number
- return urljoin(settings.URL_ROOT, reverse('qm',kwargs={'cave_id':self.found_by.cave_slug,'year':self.found_by.date.year,'qm_id':self.number,'grade':self.grade}))
+ return urljoin(settings.URL_ROOT, reverse('qm',kwargs={'cave_id':self.cave.slug(),'year':self.found_by.date.year,'qm_id':self.number,'grade':self.grade}))
def get_next_by_id(self):
return QM.objects.get(id=self.id+1)