Utilisation join sur une liste imbriquée
Bonjour,
Je cherche à afficher dans une boite de dialogue les informations de ma liste.
Si ma liste est du style :
Code:
fields= ['parcelles_Travaux_Date1','parcelles_Travaux_Date2','parcelles_Travaux_Travaux2']
ou
Code:
1 2 3
| fields= [
['parcelles_Travaux_Date1','parcelles_Travaux_Travaux1']
] |
cela fonctionne.
Mais dès que ma liste contient deux colonnes j'ai une erreur de type
TypeError: QgsFeature.__getitem__(): arguments did not match any overloaded call:
overload 1: argument 1 has unexpected type 'list'
overload 2: argument 1 has unexpected type 'list'
Code:
1 2 3 4 5 6 7 8 9 10 11
| def build_travaux_dates(e):
fields= [
['parcelles_Travaux_Date1','parcelles_Travaux_Travaux1'],
['parcelles_Travaux_Date2','parcelles_Travaux_Travaux2']
]
to_str = " : ".join([e[field] for field in fields if e[field]])
if not to_str:
return 'Aucun travaux effectués ici...'
return to_str
self.dlg.tavauxListe.setText(build_travaux_dates(e)) |
J'ai aussi essayé d'utiliser deux listes différentes 'Travaux_Date' et Travaux_Travaux avec
Code:
self.dlg.tavauxListe.setText(build_travaux_dates(e) + " : " + str(build_travaux_parcelles(e)))
dans ma boite de dialogue et en prenant la même structure pour les deux listes, cela fonctionne sauf qu'il me met tous les champs dates puis les champs travaux
Merci d'avance de votre aide
Merci de votre aide
Marcopololo