mirror of
https://github.com/graphql-python/graphene-django.git
synced 2025-02-04 13:40:35 +03:00
Add support for dict field
This commit is contained in:
parent
f747102e35
commit
68f6281ec8
|
@ -4,6 +4,7 @@ from rest_framework import serializers
|
|||
import graphene
|
||||
|
||||
from ..utils import import_single_dispatch
|
||||
from .types import DictType
|
||||
|
||||
singledispatch = import_single_dispatch()
|
||||
|
||||
|
@ -80,3 +81,8 @@ def convert_serializer_field_to_list(field, is_input=True):
|
|||
child_type = get_graphene_type_from_serializer_field(field.child)
|
||||
|
||||
return (graphene.List, child_type)
|
||||
|
||||
|
||||
@get_graphene_type_from_serializer_field.register(serializers.DictField)
|
||||
def convert_serializer_field_to_dict(field):
|
||||
return DictType
|
||||
|
|
|
@ -5,6 +5,7 @@ from py.test import raises
|
|||
import graphene
|
||||
|
||||
from ..serializer_converter import convert_serializer_field
|
||||
from ..types import DictType
|
||||
|
||||
|
||||
def _get_type(rest_framework_field, **kwargs):
|
||||
|
@ -115,3 +116,7 @@ def test_should_list_convert_to_list():
|
|||
field_b = assert_conversion(StringListField, graphene.List)
|
||||
|
||||
assert field_b.of_type == graphene.String
|
||||
|
||||
|
||||
def test_should_dict_convert_dict():
|
||||
assert_conversion(serializers.DictField, DictType)
|
||||
|
|
|
@ -1,6 +1,12 @@
|
|||
import graphene
|
||||
from graphene.types.unmountedtype import UnmountedType
|
||||
|
||||
|
||||
class ErrorType(graphene.ObjectType):
|
||||
field = graphene.String()
|
||||
messages = graphene.List(graphene.String)
|
||||
|
||||
|
||||
class DictType(UnmountedType):
|
||||
key = graphene.String()
|
||||
value = graphene.String()
|
||||
|
|
Loading…
Reference in New Issue
Block a user