28 lines
710 B
Python

import json
from typing import List, cast
from django.http import HttpRequest
from django.utils.datastructures import MultiValueDict
from ninja.types import DictStrAny
__all__ = ["Parser"]
class Parser:
"Default json parser"
def parse_body(self, request: HttpRequest) -> DictStrAny:
return cast(DictStrAny, json.loads(request.body))
def parse_querydict(
self, data: MultiValueDict, list_fields: List[str], request: HttpRequest
) -> DictStrAny:
result: DictStrAny = {}
for key in data.keys():
if key in list_fields:
result[key] = data.getlist(key)
else:
result[key] = data[key]
return result