implemented delete method for rest api
This commit is contained in:
+14
-2
@@ -13,8 +13,9 @@ def members(request, *args, **kwargs):
|
||||
|
||||
def member(request,*args, **kwargs):
|
||||
|
||||
#get and put together since both operate on existing objects and return one object
|
||||
if request.method in ['GET','PUT']:
|
||||
# get, put and delete together since all operate on existing objects
|
||||
if request.method in ['GET','PUT', 'DELETE']:
|
||||
|
||||
# get object by id or give 404
|
||||
idx = kwargs.pop("idx", None)
|
||||
try:
|
||||
@@ -24,6 +25,16 @@ def member(request,*args, **kwargs):
|
||||
resp.status_code = 404
|
||||
return resp
|
||||
|
||||
# delete object if requested
|
||||
if request.method == 'DELETE':
|
||||
try:
|
||||
mem.delete()
|
||||
return HttpResponse('{"status":"success"}')
|
||||
except:
|
||||
resp = HttpResponse('{"error" : "could not delete object"}')
|
||||
resp.status_code = 500
|
||||
return resp
|
||||
|
||||
# update model if request type was PUT
|
||||
if request.method == 'PUT':
|
||||
try:
|
||||
@@ -31,6 +42,7 @@ def member(request,*args, **kwargs):
|
||||
mem.update_from_dict(data)
|
||||
except ValueError:
|
||||
return HttpResponseBadRequest('{"error" : "Invalid parameters supplied"}')
|
||||
|
||||
return HttpResponse(json.dumps(mem.get_dict()))
|
||||
|
||||
if request.method == 'POST':
|
||||
|
||||
Reference in New Issue
Block a user