sub attributes not allowed

This commit is contained in:
gwen 2024-07-11 17:13:28 +02:00 committed by Emmanuel Garette
parent 2d4ba343ae
commit 134cc45c81
2 changed files with 3 additions and 33 deletions

View file

@ -478,7 +478,9 @@ class Variable(Common):
keys["default"] = self.populate_calculation(self.elt.default) keys["default"] = self.populate_calculation(self.elt.default)
except VariableCalculationDependencyError: except VariableCalculationDependencyError:
pass pass
# mettre dans tous les populate_calculation() for attribute in ['frozen', 'hidden', "mandatory", "disabled"]:
if hasattr(self.elt, attribute):
raise DictConsistencyError(f"Sub-attributes not allowed in a '{attribute}' attribute", 100, self.elt.xmlfiles)
if self.elt.path in self.objectspace.default_multi: if self.elt.path in self.objectspace.default_multi:
try: try:
keys["default_multi"] = self.populate_calculation( keys["default_multi"] = self.populate_calculation(

View file

@ -1,32 +0,0 @@
---
version: 1.1
var1:
default:
type: jinja
jinja: |
val
params:
var1:
type: variable
variable: _.var2
optional: true
---
version: 1.1
var1:
default:
type: variable
variable: _.var2
optional: true
---
<gnunux_recto> le 1er dico fonctionne
<gnunux_recto> si on fait une variable dans un parametre on peut la mettre optionnelle (si la variable est déclaré ca passe la variable en parametre, si la variable n'existe pas ca ne passe pas le parametre)
<gnunux_recto> dans notre cas la variable n'existe pas donc ne passe pas le parametre
<gnunux_recto> dans le 2eme ca on ne fait pas un calcul via jinja mais récupère directement la valeur de la variable
<gnunux_recto> sauf que le optional n'existe pas pour un calcul (juste pour un parametre)
<gnunux_recto> faudrait :
<gnunux_recto> 1/ ajouter cette possibilité
<gnunux_recto> voir s'il n'y a pas d'autres manque
<gnunux_recto> (c'étaot ele 2)