如何序列化 Django 中的特定 Id?

How to serialize a specific Id in Django?

我正在使用 serialize 方法获取模型对象的 json。但是当我传入一个特定的 id 时它不起作用。

data = serialize('json', Sample.objects.get(id=1), use_natural_foreign_keys=True)
print(data)

它似乎只有在您通过 all() 获得整个模型的内容时才有效,即:

data = serialize('json', Sample.objects.all(), use_natural_foreign_keys=True)

使用filter(...)代替get(...)方法

Sample.objects<b>.filter(id=1)</b>

例如:

data = serialize('json', Sample.objects.filter(id=1), use_natural_foreign_keys=True)

您的陈述没有问题,请检查 filter 选项,而不是使用 filter() 的 get() 会给出更准确的结果。

Sample.objects.get(id__exact=14) or
Sample.objects.filter(id__exact=14) or
Sample.objects.filter(id=14) or
Sample.objects.filter(id__in=[14,])