From 6a7296af52a5dd02b9726c1d78784c6d8cb3133e Mon Sep 17 00:00:00 2001 From: Christophe Henry <contact@c-henry.fr> Date: Tue, 5 Nov 2019 15:15:33 +0100 Subject: [PATCH] bugfix: Do not erase @context during serialisation when already defined (startinblox/djangoldp-packages/djangoldp#153) --- djangoldp/views.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/djangoldp/views.py b/djangoldp/views.py index 748751fc..4ed03f87 100644 --- a/djangoldp/views.py +++ b/djangoldp/views.py @@ -25,8 +25,14 @@ class JSONLDRenderer(JSONRenderer): media_type = 'application/ld+json' def render(self, data, accepted_media_type=None, renderer_context=None): - if data is not None: - data["@context"] = settings.LDP_RDF_CONTEXT + if isinstance(data, dict): + context = data.get("@context") + if isinstance(context, list): + data["@context"] = [settings.LDP_RDF_CONTEXT] + context + elif isinstance(context, str) or isinstance(context, dict): + data["@context"] = [settings.LDP_RDF_CONTEXT, context] + else: + data["@context"] = settings.LDP_RDF_CONTEXT return super(JSONLDRenderer, self).render(data, accepted_media_type, renderer_context) -- GitLab