gpt4 book ai didi

python - JSONField 被保存为字符串 django

转载 作者:太空狗 更新时间:2023-10-30 01:39:02 30 4
gpt4 key购买 nike

我有一个像下面这样的 django 模型:

from jsonfield import JSONField
class SCUser(User):
address = JSONField(blank=True,null=True)

当我在此地址中保存一个 json 时,它被保存为字符串。这是一个代码片段:

appuser.address = {"state":""}
appuser.save()

现在,如果我尝试检索 appuser.address,它会给我

>>>appuser.address
>>>u'{"state":""}'
>>>appuser.save()
>>>appuser.address
>>>u'"{\\"state\\":\\"\\"}"'

它会递归。我在这里缺少什么?

编辑:AppUser 继承自 SCUser 模型。

最佳答案

我在使用非自动域键作为模型的主键时遇到了这个问题,我发现了一些与此问题相关的问题,这些问题在 github 上仍然未解决。

https://github.com/dmkoch/django-jsonfield/issues/92

https://github.com/dmkoch/django-jsonfield/issues/101

我通过在模型中定义一个 pk 属性解决了这个问题。我不知道使用此解决方案是否有任何副作用。

class SCUser(User):
....

@property
def pk(self):
return self.id # your pk

关于python - JSONField 被保存为字符串 django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33077395/

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