From adf152938dc28e0530b68d983253ecb43a4d6574 Mon Sep 17 00:00:00 2001 From: stefan Date: Fri, 31 Jan 2025 23:58:58 +0100 Subject: [PATCH] rounded float values in short string, fixed displaying components without proper type --- shimatta_kenkyusho/parts/models.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/shimatta_kenkyusho/parts/models.py b/shimatta_kenkyusho/parts/models.py index ee019d1..1628ab8 100644 --- a/shimatta_kenkyusho/parts/models.py +++ b/shimatta_kenkyusho/parts/models.py @@ -276,6 +276,10 @@ class Component(models.Model): @property def dynamic_description(self): + + if not self.component_type or not self.component_type.description_template: + return '' + django_engine = engines["django"] template = django_engine.from_string(self.component_type.description_template) @@ -325,7 +329,7 @@ class AbstractParameter(models.Model): if my_type == 'E' or my_type == 'I': # Engineering float number (num, prefix) = NumConv.number_to_engineering(self.value, it_unit=(True if my_type=='I' else False)) - result = f'{num:g}' + result = f'{round(num, 3):g}' interpostfix = (prefix if prefix else self.parameter_type.interfix or '.') if '.' in result: result = result.replace('.', interpostfix) @@ -334,7 +338,7 @@ class AbstractParameter(models.Model): return result elif my_type == 'N': # Standard float number - return f'{self.value:g}{self.parameter_type.unit}' + return f'{round(self.value, 3):g}{self.parameter_type.unit}' else: return self.resolved_value_as_string()