From 5582d545a163c58216b32434b658a7712a893365 Mon Sep 17 00:00:00 2001 From: Martin Green Date: Mon, 11 Jul 2022 23:29:59 +0100 Subject: Allow QMS to be rendered to a string, if the case that an optional parameter is missing --- core/models/caves.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'core/models/caves.py') diff --git a/core/models/caves.py b/core/models/caves.py index 5a09229..c31eb6f 100644 --- a/core/models/caves.py +++ b/core/models/caves.py @@ -505,9 +505,22 @@ class QM(TroggleModel): return f'{self.code()}' def code(self): - return f'{str(self.cave.slug())[5:]}-{self.expoyear}-{self.blockname}{self.number}{self.grade}' + if self.cave: + cavestr = str(self.cave.slug())[5:] + else: + cavestr = "" + if self.expoyear: + expoyearstr = str(self.cave.slug())[5:] + else: + expoyearstr = self.expoyear + if self.blockname: + blocknamestr = self.blockname + else: + blocknamestr = "" + return f'{cavestr}-{expoyearstr}-{blocknamestr}{self.number}{self.grade}' def newslug(self): + qmslug = f'{str(self.cave)}-{self.expoyear}-{self.blockname}{self.number}{self.grade}' return qmslug -- cgit v1.2.3