1

我想拥有我的 sqlalchemy 查询的列名,但我找不到如何做到这一点。

我尝试了几种方法

我尝试的第一种方法是创建一个新类,因为名称必须与列名不同

class DosierWeergave():
    def __init__(self, code_arg, year_registr, period_registr, staynum, status):
        self.Code_Arg = str(code_arg)
        self.Year_registr = str(year_registr)
        self.Period_registr = str(period_registr)
        self.Staynum = str(staynum)
        self.Status = str(status)

然后我做了一个对象

a = DosierWeergave(187,2010,4,"0000010000", "inbehandeling")

然后我得到了正确的名称,但顺序不正确。有谁知道我如何以正确的顺序获取列名(类属性)。

另一种方法是使用该函数:columns.keys()

HeaderDosiers = Dosiers2.__table__.columns.keys()

但是她我得到了所有的列标题,但我找不到如何过滤它们有没有人知道如何解决这个问题,或者有没有人有更好的方法来做到这一点

4

1 回答 1

1

你想对列名做什么;如果要打印它们,请创建一个str函数:

def __str__(self):
    str  = 'Code Arg', self._code_arg
    str += 'Year_registr', self.Year_registr
    ...

    return str

我不建议使用反射。

于 2013-05-02T13:37:08.630 回答