Commit 86018952 by Piotr Mitros

Same for view

parent e75849c6
...@@ -46,34 +46,41 @@ def schema(request): ...@@ -46,34 +46,41 @@ def schema(request):
if request.GET.get("f", "") == "html": if request.GET.get("f", "") == "html":
return HttpResponse("\n".join(sorted(["<dt><p><b>{class}/{name}</b> <i>{category}</i></dt><dd>{doc}</dd>".format(**rh) for rh in endpoints]))) return HttpResponse("\n".join(sorted(["<dt><p><b>{class}/{name}</b> <i>{category}</i></dt><dd>{doc}</dd>".format(**rh) for rh in endpoints])))
return HttpResponse(json.dumps(endpoints)) return HttpResponse(json.dumps(endpoints))
view_object=None
@auth.auth @auth.auth
def handle_view(request, name, **kwargs): def handle_view(request, name, **kwargs):
''' Handles generic view. ''' Handles generic view.
Category is where this should be place (per student, per problem, etc.) Category is where this should be place (per student, per problem, etc.)
Name is specific Name is specific
''' '''
global view_object
if not False:
from djobject import embed
view_object = embed('view')
if name[0] == '_':
raise SuspiciousOperation(name+' called')
kwargs.update(request.POST.items()) kwargs.update(request.POST.items())
kwargs.update(request.GET.items()) kwargs.update(request.GET.items())
from registry import handle_request results = view_object.__getattr__(name)(**kwargs)
return HttpResponse(handle_request('view', name, **kwargs)) return HttpResponse(results)
query = None query_object = None
@auth.auth @auth.auth
def handle_query(request, name, **kwargs): def handle_query(request, name, **kwargs):
''' Handles generic view. ''' Handles generic view.
Category is where this should be place (per student, per problem, etc.) Category is where this should be place (per student, per problem, etc.)
Name is specific Name is specific
''' '''
global query global query_object
if not False: if not False:
from djobject import embed from djobject import embed
query = embed('query') query_object = embed('query')
if name[0] == '_': if name[0] == '_':
raise SuspiciousOperation(name+' called') raise SuspiciousOperation(name+' called')
kwargs.update(request.POST.items()) kwargs.update(request.POST.items())
kwargs.update(request.GET.items()) kwargs.update(request.GET.items())
results = query.__getattr__(name)(**kwargs) results = query_object.__getattr__(name)(**kwargs)
try: try:
results = json.dumps(results) results = json.dumps(results)
except: except:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment