django - 从Django序列化对象中删除pk字段

标签 django json serialization

我正在使用以下方法序列化一堆对象:

json = serializers.serialize("json", objects, fields=('name', 'country'))


我没有在字段列表中包含“ pk”,但是生成的JSON在每个序列化对象中都包含一个主键。我不希望我的API向公众公开主键。

除了简化输出JSON,告诉serializers.serialze()不包括主键的正确方法是什么?

最佳答案

最后,我通过使用底层的simplejson序列化器“手动”实现了所需的功能来解决此问题:

from django.utils import simplejson
json = simplejson.dumps( [{'name': o.name,
                           'country': o.country} for o in objects] )


多一点打字,但可以。

关于django - 从Django序列化对象中删除pk字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1615649/

相关文章:

python - Django 查询集过滤器缺少引号

java - 不使用ajax以编程方式搜索google

json - Python 3 json.load() 以错误的顺序读取 JSON 文件

c++ - 使用 Boost :serialize 反序列化指向派生类的指针时出现问题

java - 错误 : Class declares multiple JSON fields named serialVersionUid

python - 需要帮助 Django 中的 ModelMultipleChoiceField 错误

python - 如何连接序列化器(DjangoRestFramework)中的字段?

python - 在升级到 Django 1.8 时,为什么我会收到 AttributeError 'ManyToManyRel' object has no attribute 'rel' ?

java - 将 Java 3d 对象写入自定义文件类型

javascript - 使用 javascript 从 iOS 文档文件夹中读取 JSON 文件