From 706ee42f749326332c44d83c1f36aae90a2b1b0a Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Fri, 25 Oct 2019 10:47:01 +0200 Subject: [PATCH 2/2] misc: add long_description for POST endpoints (#35818) --- passerelle/templates/passerelle/manage/service_view.html | 5 +++++ passerelle/utils/api.py | 4 ++++ passerelle/views.py | 2 +- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/passerelle/templates/passerelle/manage/service_view.html b/passerelle/templates/passerelle/manage/service_view.html index 82163dfb..70a8b9ad 100644 --- a/passerelle/templates/passerelle/manage/service_view.html +++ b/passerelle/templates/passerelle/manage/service_view.html @@ -76,6 +76,11 @@ {% endfor %} {% endif %} + {% if endpoint.long_description %} +
+ {{ endpoint.long_description }} +
+ {% endif %} {% endfor %} diff --git a/passerelle/utils/api.py b/passerelle/utils/api.py index a8160fcc..4bfd554f 100644 --- a/passerelle/utils/api.py +++ b/passerelle/utils/api.py @@ -120,6 +120,10 @@ class endpoint(object): def description(self): return self.descriptions.get(self.http_method) + @property + def long_description(self): + return self.http_method == 'post' and self.post and self.post.get('long_description') + def get_params(self): params = [] defaults = dict(zip( diff --git a/passerelle/views.py b/passerelle/views.py index fa0490a1..657693f4 100644 --- a/passerelle/views.py +++ b/passerelle/views.py @@ -337,7 +337,7 @@ class GenericEndpointView(GenericConnectorMixin, SingleObjectMixin, View): raise InvalidParameterValue(parameter) if request.method == 'POST' and self.endpoint.endpoint_info.post: - request_body = self.endpoint.endpoint_info.post.get('request_body') + request_body = self.endpoint.endpoint_info.post.get('request_body', {}) if 'application/json' in request_body.get('schema', {}): json_schema = request_body['schema']['application/json'] try: -- 2.23.0