Recursive Serialization for Django REST framework
Python
Switch branches/tags
Nothing to show
Clone or download
heywbj Merge pull request #19 from pelme/changelog
Initial release notes. Fixed #18.
Latest commit c4eb4d0 Jul 14, 2017

README.md

djangorestframework-recursive

build-status-image pypi-version

Overview

Recursive Serialization for Django REST framework

This package provides a RecursiveField that enables you to serialize a tree, linked list, or even a directed acyclic graph. Also supports validation, deserialization, ModelSerializers, and multi-step recursive structures.

Example

from rest_framework import serializers
from rest_framework_recursive.fields import RecursiveField

class TreeSerializer(serializers.Serializer):
    name = serializers.CharField()
    children = serializers.ListField(child=RecursiveField())

see here for more usage examples

Requirements

  • Python (Tested on 2.7, 3.4)
  • Django (Tested on 1.8, 1.9)
  • Django REST Framework (Tested on 3.3)

Installation

Install using pip...

$ pip install djangorestframework-recursive

Release notes

0.1.2

  • This is the first release to include release notes.
  • Use inspect.signature when available. This avoids emitting deprecation warnings on Python 3.
  • Updated CI versions. djangoreestframework-recursive is now tested against DRF 3.3-3.6, Python 2.7 and 3.6 and Django 1.8-1.11.

Testing

Install testing requirements.

$ pip install -r requirements.txt

Run with runtests.

$ ./runtests.py

You can also use the excellent tox testing tool to run the tests against all supported versions of Python and Django. Install tox globally, and then simply run:

$ tox