Python SqlAlchemy映射器未返回干净的UUID

Python SqlAlchemy映射器未返回干净的UUID,python,sqlalchemy,Python,Sqlalchemy,我有一个表,它正在用SqlAlchemy映射。该表中有一个UUID列。当我试图查询该表时,我得到字节格式的uuid。有什么方法可以让映射器返回干净的字符串表示形式吗?映射程序的代码为: Practice = Table('Practice',metadata, schema='pulse',autoload=True, autoload_with=engine, quote_schema=True) class PracticeMap(object):

我有一个表,它正在用SqlAlchemy映射。该表中有一个UUID列。当我试图查询该表时,我得到字节格式的uuid。有什么方法可以让映射器返回干净的字符串表示形式吗?映射程序的代码为:

Practice = Table('Practice',metadata,
                 schema='pulse',autoload=True, autoload_with=engine, quote_schema=True)
class PracticeMap(object):
    def __str__(self):
        return "%s" % self.Name
    def __repr__(self):
        return "Name: %s, UUID: %s" % (self.Name, self.uuid)
mapper(PracticeMap,Practice)

谢谢。

您始终可以使用python uuid库重新格式化uuid:

import uuid
uuid_string = str(uuid.UUID(bytes_le=self.uuid))

如果只需要_urepr_uu_u的字符串表示,那么应该可以做到这一点。如果希望对象的uuid属性位于字符串区域,则需要重命名column属性并提供自己的uuid属性来包装它。

始终可以使用python uuid库重新格式化uuid:

import uuid
uuid_string = str(uuid.UUID(bytes_le=self.uuid))

如果只需要_urepr_uu_u的字符串表示,那么应该可以做到这一点。如果希望对象的uuid属性位于字符串区域,则需要重命名column属性并提供自己的uuid属性来包装它。

我希望避免这种情况,因为我正在将SqlAlchemy查询对象传递给另一个函数(使用WTForms的SqlAlch字段扩展)。我希望避免这种情况,当我将SqlAlchemy查询对象传递给另一个函数时(使用WTForms的SqlAlch字段扩展)。