在Django外键中更改UUID格式

时间:2013-05-20 13:30:02

标签: python django postgresql uuid

我有postgresql DB并在我的模型中使用UUID作为PK。 当我做

之类的事情
model.rel_model.id

它在32个字符中返回uuid(没有' - '分隔符,就像uuid.hex那样) - 因为我编写了自定义'to_python'方法。 但是当我做的时候

model.rel_model_id

它使用' - '分隔符(如str(uuid))返回uuid。但是我想重新设计它以获得它在第一个样本中。 我发现this bug in Django - 这是同样的问题吗?

1 个答案:

答案 0 :(得分:1)

好的,使用Python的属性来定义如何获取或设置id属性:

def getid(self):
    return str(self.id)
def setid(self, value):
    self.id = value
id = property(getid, setid)