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()