1 from django.views.generic.base import TemplateView
2 from django.shortcuts import render_to_response
4 from unfold.loginrequired import LoginRequiredView
5 from django.http import HttpResponse
7 from manifold.core.query import Query, AnalyzedQuery
8 from manifoldapi.manifoldapi import execute_query
10 from rest import ObjectRequest, error, success
12 from string import join
17 def dispatch(request, object_type, object_name):
19 o = ObjectRequest(request, object_type, object_name)
21 if request.method == 'POST':
22 req_items = request.POST
23 elif request.method == 'GET':
24 #return error('only post request is supported')
25 req_items = request.GET
27 for el in req_items.items():
29 print "#===============>",el
30 if el[0].startswith('filters'):
31 o.filters[el[0][8:-1]] = el[1]
32 elif el[0].startswith('params'):
33 print "#======> 0 ", el[0]
34 print "#======> 1 ", req_items.getlist(el[0])
36 if (el[0][-2:] == '[]') :
37 # when receiving params[key][] = 'value1' ...
38 #o.params.append({el[0][7:-3]:",".join(req_items.getlist(el[0]))})
39 o.params.append({el[0][7:-3]:req_items.getlist(el[0])})
41 # when receiving params[key] = 'value'
42 o.params.append({el[0][7:-1]:el[1]})
44 print "o.params = ",o.params
46 elif el[0].startswith('fields'):
47 o.fields=req_items.getlist('fields[]')
48 elif el[0].startswith('options'):
49 o.options = req_items.getlist('options[]')
55 return success('record updated')
57 return error('an error has occurred')
60 return error("exception:"+str(e))