Merge branch 'onelab' of ssh://git.onelab.eu/git/myslice into onelab
[myslice.git] / rest / update.py
index b1a8875..8deb428 100644 (file)
@@ -23,18 +23,25 @@ def dispatch(request, object_type, object_name):
     elif request.method == 'GET':
         #return error('only post request is supported')
         req_items = request.GET
+    print req_items
     for el in req_items.items():
         
-        print "#===============>",o.params
+        print "#===============>",el
         if el[0].startswith('filters'):
             o.filters[el[0][8:-1]] = el[1]
         elif el[0].startswith('params'):
-            print "#======>", el[0]
-            print "#======>", el[0][7:8]
-            print "#======>", el[0][10:-1]
-            print "#======>", el[1]
-            o.params.append({ el[0][10:-1] : el[1] })
+            print "#======> 0 ", el[0]
+            print "#======> 1 ", req_items.getlist(el[0])
+
+            if (el[0][-2:] == '[]') :
+                # when receiving params[key][] = 'value1' ...
+                #o.params.append({el[0][7:-3]:",".join(req_items.getlist(el[0]))})
+                o.params.append({el[0][7:-3]:req_items.getlist(el[0])})
+            else :
+                # when receiving params[key] = 'value'
+                o.params.append({el[0][7:-1]:el[1]})
             
+            print "o.params = ",o.params
             
         elif el[0].startswith('fields'):
             o.fields=req_items.getlist('fields[]')
@@ -50,5 +57,5 @@ def dispatch(request, object_type, object_name):
             return error('an error has occurred')
  
     except Exception, e:
-        return error(str(e))
+        return error("exception:"+str(e))