我要做的就是使用formalchemy 1.3.5 使用字典设置下拉列表的值。
文档内容如下:
采用 options 参数的方法将接受几种指定这些选项的方法:
- SQLAlchemy 对象的可迭代;每个对象的 str() 将是描述,主键是值
- SQLAlchemy 查询;查询将使用 all() 执行,返回的对象按上述方式评估
- (描述,值)对的可迭代
- {description: value} 对的字典
我创建了一个字典,如下所述:
Location = model.meta.Session.query(model.Location)
cityCodes = {}
for row in Location:
cityCodes.update({row.city : str(row.location_code)})
并包括它:
EmpsPerson.wiw_location_code.label('Location').dropdown(options = cityCodes),
但是,这些值仍被设置为描述:
<option value="Dubai">Dubai</option>
<option value="Portsmouth">Portsmouth</option>
<option value="Toulouse">Toulouse</option>
<option value="Singapore">Singapore</option>
解决了:
所以为了解决这个问题,我刚刚使用了:
for row in Location:
cityCodes.append([row.city,int(row.location_code)])
EmpsPerson.location_code.label('Location').dropdown(options=cityCodes)