diff --git a/openapi_codec/encode.py b/openapi_codec/encode.py index 13b3ef4..1dcb3b6 100644 --- a/openapi_codec/encode.py +++ b/openapi_codec/encode.py @@ -1,7 +1,7 @@ import coreschema from collections import OrderedDict from coreapi.compat import urlparse -from openapi_codec.utils import get_method, get_encoding, get_location, get_links_from_document +from openapi_codec.utils import get_method, get_encoding, get_location, get_links_from_document, get_parameter_name def generate_swagger_object(document): @@ -193,8 +193,9 @@ def _get_parameters(link, encoding): parameters.append(parameter) if properties: + parameter_name = get_parameter_name(link) parameter = { - 'name': 'data', + 'name': parameter_name, 'in': 'body', 'schema': { 'type': 'object', diff --git a/openapi_codec/utils.py b/openapi_codec/utils.py index 9689124..91b3bbe 100644 --- a/openapi_codec/utils.py +++ b/openapi_codec/utils.py @@ -30,6 +30,10 @@ def get_method(link): return method +def get_parameter_name(link): + return link.title.title() + link.action.title() + "Params" + + def get_encoding(link): encoding = link.encoding has_body = any([get_location(link, field) in ('form', 'body') for field in link.fields])