Kor*_*rts 5 python django uuid serialization json
我的命令有问题dumpdata。然而,我将django-uuidfield其用作我的一些模型的主键;每当我尝试运行时dumpdata,都会遇到错误
TypeError: UUID('...') is not JSON serializable。
我发现在 Django 的DjangoJSONEncoder类内部,它不会检查对象UUID,而是会转到default()引发异常的父类。
当我添加检查时,它似乎工作正常,没有任何错误或警告。
我不确定这是一个错误还是我做错了什么。
笔记:
我没有更改里面的任何代码django-uuidfield。
谢谢。
编辑:
适用于未设置为 的dumpdata另一个模型。不起作用的已设置为.uuidfieldautouudfieldauto
小智 0
在我的 models.py 中:
import uuid
Run Code Online (Sandbox Code Playgroud)
在我的模型中:
class MyUser(AbstractUser):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
Run Code Online (Sandbox Code Playgroud)
为了解决这个问题,我使用这个函数在 MyUser 中编写:
def user_id(self):
return self.id.__str__()
Run Code Online (Sandbox Code Playgroud)
当 TypeError 尝试你该类型UUID不是 JSON 可序列化时,
所以你应该使用string。
希望它能帮助你。
| 归档时间: |
|
| 查看次数: |
11358 次 |
| 最近记录: |