Metadata-Version: 2.1
Name: drf-nested-browsable
Version: 0.1.2
Summary: Writable nested serializers with forms for the Browsable API
Home-page: https://pierre-couy.dev/projects/drf-nested-browsable.html
License: MIT
Keywords: django,rest framework,drf,browsable api,nested serializers
Author: Pierre Couy
Author-email: contact@pierre-couy.dev
Requires-Python: >=3.10,<4.0
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: django (>=4.2,<5.0)
Requires-Dist: djangorestframework (>=3.14.0,<4.0.0)
Project-URL: Repository, https://github.com/pcouy/drf-nested-browsable
Description-Content-Type: text/markdown

:warning: Work In Progress :warning:

# Writable Nested Serializers with Browsable API Forms

This plugin is intended to provide writable nested serializers (similar to [the recommended plugin from DRF documentation](https://github.com/beda-software/drf-nested-browsable.git)) that bring their own forms for the Browsable API renderer.

## Try it out

This project's dependencies are managed using [`poetry`](https://python-poetry.org/)

```bash
git clone https://github.com/pcouy/drf-nested-browsable
cd drf-nested-browsable
poetry install
cd example
python manage.py migrate
python manage.py runserver
```

The above commands will install the dependencies, run the DB migrations, and launch a development server of the example project that uses the provided serializers.

## Current state of the project

### Done

* Ability to write to a reverse `ForeignKey` relationship using serializer `Meta` class
* Dynamic form for `WritableNestedListSerializer` that allows adding and removing children from the Browsable API
* Basic example

### To do

* Make the current example work :
  * Do not show `parent` select list when showing forms as children of another form
  * Show `details` (`HyperlinkedIdentityField`) when displayed as a child Serializer
* Write documentation / Auto-generate it from the docstrings ([pdoc](https://pdoc.dev/) ?)
* Write tests/specs

