Liste déroulante FormAlchemy ne définissant pas de valeurs
-
28-10-2019 - |
Question
Tout ce que j'essaie de faire est de définir les valeurs d'une liste déroulante en utilisant un dictionnaire utilisant formalchemy 1.3.5.
La documentation se lit comme suit:
Les méthodes prenant un paramètre d'options accepteront plusieurs manières de spécifier ces options:
- un itérable d'objets SQLAlchemy;str () de chaque objet sera la description et la clé primaire la valeur
- une requête SQLAlchemy;la requête sera exécutée avec all () et les objets retournés évalués comme ci-dessus
- un itérable de paires (description, valeur)
- un dictionnaire de {description: value} paires
Je crée un dictionnaire comme décrit ici:
Location = model.meta.Session.query(model.Location)
cityCodes = {}
for row in Location:
cityCodes.update({row.city : str(row.location_code)})
et incluez-le:
EmpsPerson.wiw_location_code.label('Location').dropdown(options = cityCodes),
Cependant, les valeurs sont toujours définies comme description:
<option value="Dubai">Dubai</option>
<option value="Portsmouth">Portsmouth</option>
<option value="Toulouse">Toulouse</option>
<option value="Singapore">Singapore</option>
Résolu:
Donc, pour résoudre ce problème, je viens d'utiliser:
for row in Location:
cityCodes.append([row.city,int(row.location_code)])
EmpsPerson.location_code.label('Location').dropdown(options=cityCodes)
La solution
Je suppose que le document est obsolète.Essayez avec une liste
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow