Parser for nested params in multipart file upload
Project description
drf-nested-multipart-parser
DRF Parser for nested params in multipart file upload.
Usage
from drf_nested_multipart_parser import NestedMultipartParser
from rest_framework import viewsets
class YourViewSet(viewsets.ViewSet):
parser_classes = (NestedMultipartParser,)
To enable JSON and multipart
from drf_nested_multipart_parser import NestedMultipartParser
from rest_framework.parsers import JSONParser
from rest_framework import viewsets
class YourViewSet(viewsets.ViewSet):
parser_classes = (JSONParser, NestedMultipartParser)
Example:
Input data
user[email] = 'test@test.test'
user[name] = 'John Doe'
user[profile][balance] = 100.00
user[profile][phone_number] = '+996325698201'
user[profile][avatar] = avatar_file
user[roles][] = 1
user[roles][] = 2
user[roles][] = 3
...
View
from drf_nested_multipart_parser import NestedMultipartParser
from rest_framework import viewsets
class YourViewSet(viewsets.ViewSet):
parser_classes = (NestedMultipartParser,)
def post(self, request):
user_data = request.data.get('user')
email = user_data['email'] # test@test.test
balance = user_data['profile']['balance'] # 100.0
roles = user_data['roles'] # [1, 2, 3]
...
Installation
pip install drf-nested-multipart-parser
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for drf-nested-multipart-parser-0.0.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b1832b2e298952985d9a3b0628bba96aca85b3a19c8253e2f7d3160ccf0005bb |
|
MD5 | e0306e11e1cecd112edc4b8202537a8b |
|
BLAKE2b-256 | 53dca24dde66090a3aa13de1a7210e1682a5b35f1a6e70691213c1b6e4dbdd9a |
Close
Hashes for drf_nested_multipart_parser-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d332fccc12ecb07cbce7b4199d25fc4f613d550600b643f43972e194901d863b |
|
MD5 | f2e138e59cd1fa27ff358894e3a99358 |
|
BLAKE2b-256 | 4d43f1832f00bc548211ea4ad45b3ff179882650e4d5f8b69b113bfc53e42207 |