Skip to main content

Extended serializers for Django.

Project description

Extended Django Serializer Module

The wadofstuff.django.serializers python module extends Django’s built-in serializers, adding 3 new capabilities inspired by the Ruby on Rails JSON serializer. These parameters allow the developer more control over how their models are serialized.

The additional capabilities are:

  • excludes - a list of fields to be excluded from serialization. The excludes list takes precedence over the fields argument.

  • extras - a list of non-model field properties or callables to be serialized.

  • relations - a list or dictionary of model related fields to be followed and serialized.

Example of serializing a relation

>>> serializers.serialize('json', Group.objects.all(), indent=4, relations=('permissions',))
[
    {
        "pk": 2,
        "model": "auth.group",
        "fields": {
            "name": "session",
            "permissions": [
                {
                    "pk": 19,
                    "model": "auth.permission",
                    "fields": {
                        "codename": "add_session",
                        "name": "Can add session",
                        "content_type": 7
                    }
                }
            ]
        }
    }
]

What’s new

Version 1.1.0:

  • Added support for “natural keys” as implemented in Django.

Version 1.0.0:

  • First public release.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page