From 20a9b245f784e93f4b1fb4cef7fccf65bf515a94 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste <bleme@pm.me> Date: Tue, 12 Feb 2019 14:39:36 +0100 Subject: [PATCH] update: allow update and create on PUT or POST with @graph input --- djangoldp/serializers.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/djangoldp/serializers.py b/djangoldp/serializers.py index ab70d648..70dc8ac7 100644 --- a/djangoldp/serializers.py +++ b/djangoldp/serializers.py @@ -38,7 +38,21 @@ class LDListMixin: view_name = '{}-list'.format(self.parent.Meta.model._meta.object_name.lower()) part_id = '/{}'.format(get_resolver().reverse_dict[view_name][0][0][0], self.parent.instance.pk) obj = next(filter(lambda o: part_id in o['@id'], object_list)) - return super().get_value(obj) + list = super().get_value(obj); + try: + list= list['ldp:contains'] + except KeyError: + pass + + ret=[] + for item in list: + fullItem = next(filter(lambda o: item['@id'] == o['@id'], object_list)) + if fullItem is None: + ret.append(item) + else: + ret.append(fullItem) + + return ret except KeyError: return super().get_value(dictionary) -- GitLab