#31 API POST/PUT Intervention

* splits code in smaller, reusable methods
* adds put method to view
* adds update_model_from_json() method
This commit is contained in:
2022-01-24 13:04:39 +01:00
parent 854e358b73
commit b1a42b126e
3 changed files with 108 additions and 36 deletions

View File

@@ -51,6 +51,15 @@ class AbstractModelAPIViewV1(AbstractModelAPIView):
return self.return_error_response(e, 500)
return JsonResponse({"id": created_id})
def put(self, request: HttpRequest, id=None):
try:
body = request.body.decode("utf-8")
body = json.loads(body)
updated_id = self.serializer.update_model_from_json(id, body, self.user)
except Exception as e:
return self.return_error_response(e, 500)
return JsonResponse({"id": updated_id})
class InterventionAPIViewV1(AbstractModelAPIViewV1):
serializer = InterventionAPISerializerV1