-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathutils.py
More file actions
23 lines (17 loc) · 676 Bytes
/
Copy pathutils.py
File metadata and controls
23 lines (17 loc) · 676 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from __future__ import print_function
__author__ = 'javier'
def custom_resource(self, function, request, **kwargs):
self.method_check(request, allowed=['get'])
self.is_authenticated(request)
self.throttle_check(request)
output = function(**kwargs)
if isinstance(output, list):
result = []
for obj in output:
bundle = self.build_bundle(obj=obj, request=request)
result.append(self.full_dehydrate(bundle))
else:
bundle = self.build_bundle(obj=output, request=request)
result = self.full_dehydrate(bundle)
self.log_throttled_access(request)
return self.create_response(request, result)