summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorMartin Green <martin.speleo@gmail.com>2023-07-10 17:00:56 +0200
committerMartin Green <martin.speleo@gmail.com>2023-07-10 17:00:56 +0200
commit67361fa66c1aa2885ba90b68b9d9181f7a5b981b (patch)
tree256d4bcc22760cc396a09782df3760e345dc00da /core
parentb27852c1f3fd3280e36ca0973b34a64c361b536a (diff)
parent8ff438942dd0981d2dd442dae3e61fbd5a84280e (diff)
downloadtroggle-67361fa66c1aa2885ba90b68b9d9181f7a5b981b.tar.gz
troggle-67361fa66c1aa2885ba90b68b9d9181f7a5b981b.tar.bz2
troggle-67361fa66c1aa2885ba90b68b9d9181f7a5b981b.zip
Merge branch 'master' of ssh://expo.survex.com/home/expo/troggle
Diffstat (limited to 'core')
-rw-r--r--core/admin.py3
-rw-r--r--core/models/logbooks.py14
-rw-r--r--core/views/editor_helpers.py2
3 files changed, 15 insertions, 4 deletions
diff --git a/core/admin.py b/core/admin.py
index b7c0d2b..1d8201f 100644
--- a/core/admin.py
+++ b/core/admin.py
@@ -3,7 +3,7 @@ from django.core import serializers
from django.http import HttpResponse
from troggle.core.models.caves import Area, Cave, CaveAndEntrance, Entrance
-from troggle.core.models.logbooks import QM, LogbookEntry, PersonLogEntry
+from troggle.core.models.logbooks import QM, LogbookEntry, PersonLogEntry, CaveSlug
from troggle.core.models.survex import (
DrawingFile,
SingleScan,
@@ -139,6 +139,7 @@ admin.site.register(Cave, CaveAdmin)
admin.site.register(Area)
admin.site.register(CaveAndEntrance)
admin.site.register(Entrance, EntranceAdmin)
+admin.site.register(CaveSlug)
admin.site.register(SurvexBlock, SurvexBlockAdmin)
admin.site.register(DrawingFile, DrawingFileAdmin)
admin.site.register(Expedition)
diff --git a/core/models/logbooks.py b/core/models/logbooks.py
index 9a13b59..b0bde61 100644
--- a/core/models/logbooks.py
+++ b/core/models/logbooks.py
@@ -11,8 +11,15 @@ from troggle.core.models.troggle import Expedition, TroggleModel
"""
todo = """
-- Can we rewrite things to eliminate the CaveSlug and objects? Surely
- foreign keys work fine ?!
+- Can we rewrite things to eliminate the CaveSlug and objects? No
+ Surely foreign keys work fine ?! No
+
+ Foreign keys do not allow for there being multiple ways to refer to a cave, eg 1623-1999-03 aka 1623-204
+ Having slugs allows for much more loose coupling to caves, which removes alot of the need to reset the database, which interupts work flow.
+ It also means we do not have to be creating temporary cave objects in the database, where we do not have the underlying file in cave_data.
+
+ To Do move Cave Slug back to troggle.core.models
+
"""
@@ -25,6 +32,9 @@ class CaveSlug(models.Model):
slug = models.SlugField(max_length=50, unique=True)
primary = models.BooleanField(default=False)
+ def __str__(self):
+ return f"{self.slug}: {self.cave}"
+
class LogbookEntry(TroggleModel):
"""Single parsed entry from Logbook
diff --git a/core/views/editor_helpers.py b/core/views/editor_helpers.py
index 17ae04b..7aa9c75 100644
--- a/core/views/editor_helpers.py
+++ b/core/views/editor_helpers.py
@@ -95,7 +95,7 @@ def new_image_form(request, path):
# Create directories if required
for full_path in image_path, thumb_path, desc_path:
print(full_path, full_path.parent)
- full_path.parent.mkdir(parents=False, exist_ok=True)
+ full_path.parent.mkdir(parents=True, exist_ok=True)
try:
change_message = form.cleaned_data["change_message"]
write_and_commit(