Python 如何使用sqlalchemy从两列创建元组,从数据库填充变形选择小部件

Python 如何使用sqlalchemy从两列创建元组,从数据库填充变形选择小部件,python,sqlalchemy,colander,Python,Sqlalchemy,Colander,deformselect小部件接受两个元素元组的序列。如何从sqlalchemy查询的两列中创建两个元素元组 下面的代码适用于硬编码示例 class ProfileValueSelect(colander.MappingSchema): choices = ( ('', '- Select -'), ('one', 'One'), ('two', 'Two'), ('three', 'Three') ) me

deformselect小部件接受两个元素元组的序列。如何从sqlalchemy查询的两列中创建两个元素元组

下面的代码适用于硬编码示例

class ProfileValueSelect(colander.MappingSchema):
    choices = (
        ('', '- Select -'),
        ('one', 'One'),
        ('two', 'Two'),
        ('three', 'Three')
    )
    menu = colander.SchemaNode(
        colander.String(),
        title=False,
        missing=unicode(''),
        widget=deform.widget.SelectWidget(values=choices)
    )
没有提供足够的信息,但发现解决方案比我想象的更直接

class ProfileValueSelect(colander.MappingSchema):
    result = DBSession.query(Profile.uid, Profile.value).order_by(Profile.value).all()
    menu = colander.SchemaNode(
    colander.String(),
    title=False,
    missing=unicode(''),
    widget=deform.widget.SelectWidget(values=result)
)

如何从sqlalchemy中获取数据?看看这里和这里-我希望在将来的某个时候在独立教程中介绍这一点。如果你还没有答案,我现在可以做。你应该提供解决方案作为答案,即使是你自己提出的。