diff options
author | Martin Green <martin.speleo@gmail.com> | 2022-07-11 23:29:59 +0100 |
---|---|---|
committer | Martin Green <martin.speleo@gmail.com> | 2022-07-11 23:29:59 +0100 |
commit | 5582d545a163c58216b32434b658a7712a893365 (patch) | |
tree | 7edba1c120fe45d58de516d9cf529293382186e6 /core/models/caves.py | |
parent | c416de6e1e87ea38d720382ee1aa8117915166a7 (diff) | |
download | troggle-5582d545a163c58216b32434b658a7712a893365.tar.gz troggle-5582d545a163c58216b32434b658a7712a893365.tar.bz2 troggle-5582d545a163c58216b32434b658a7712a893365.zip |
Allow QMS to be rendered to a string, if the case that an optional parameter is missing
Diffstat (limited to 'core/models/caves.py')
-rw-r--r-- | core/models/caves.py | 15 |
1 files changed, 14 insertions, 1 deletions
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 |