在Django查询集中将UUID转换为字符串

qyswt5oh  于 2023-01-31  发布在  Go
关注(0)|答案(1)|浏览(224)

我有一个以UUID作为主键的模型。

class Books(models.Model):
        id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
        title = .....

我有一个简单的问题:

results = Books.objects.all()

在保存和检索数据方面,一切都很好,但是记录编辑过程的一部分需要将记录存储在会话变量中,这意味着我得到了'UUID('…') is not JSON serializable'错误。
在我看来,最简单的答案是在进行初始查询后立即将UUID对象转换为字符串,从而防止在其他地方进行多次更改。这听起来合乎逻辑吗?如果是这样,我想我可以通过某种列表理解来做到这一点。有人能在语法方面提供帮助吗?或者如果愿意,可以指导我使用该方法!非常感谢。

l7wslrjt

l7wslrjt1#

#you have to use

import json

results = Books.objects.all().values('id')

json_str = json.dumps(results)

相关问题