gpt4 book ai didi

python - 使用 SQLAlchemy ORM,如何获取第 n 列?

转载 作者:太空宇宙 更新时间:2023-11-04 03:48:29 24 4
gpt4 key购买 nike

假设我通过 SQLAlchemy 的声明式系统创建了一个表。

class Recipe (Base):
__tablename__ = 'recipe'

id = Column(Integer, primary_key=True)
title = Column(Text)
instructions = Column(Text)

现在假设我执行了一个查询,该查询生成了 Recipe 类的实例 r。如何获取 r 的第 n 列值? (例如,将 r.instructions 表达为类似 r[2] 的内容——这是行不通的。)

最佳答案

发现了一些东西:

getattr(r, list(Recipe.__table__._columns)[n].name)

Recipe.__table__columns 返回看起来像列表但实际上是 ImmutableColumnCollection 的内容。所以我们使用 list 将它变成一个,并取该列表的第 n 元素的名称 -- 列名(因此对于 n == 2,那将是 说明)。最后,我们从 Recipe 对象 rgetattr 那个名称的属性。

关于python - 使用 SQLAlchemy ORM,如何获取第 n 列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22521993/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com