fix api_etag call with changeset
This commit is contained in:
parent
f915210cf2
commit
d368f2c0ab
2 changed files with 10 additions and 6 deletions
|
@ -69,10 +69,8 @@ class EditorViewSet(ViewSet):
|
||||||
|
|
||||||
# noinspection PyPep8Naming
|
# noinspection PyPep8Naming
|
||||||
@list_route(methods=['get'])
|
@list_route(methods=['get'])
|
||||||
@api_etag(etag_func, cache_parameters={'level': str, 'space': str})
|
@api_etag(etag_func=etag_func, cache_parameters={'level': str, 'space': str})
|
||||||
def geometries(self, request, *args, **kwargs):
|
def geometries(self, request, *args, **kwargs):
|
||||||
request.changeset = ChangeSet.get_for_request(request)
|
|
||||||
|
|
||||||
Level = request.changeset.wrap_model('Level')
|
Level = request.changeset.wrap_model('Level')
|
||||||
Space = request.changeset.wrap_model('Space')
|
Space = request.changeset.wrap_model('Space')
|
||||||
|
|
||||||
|
@ -204,7 +202,7 @@ class EditorViewSet(ViewSet):
|
||||||
raise ValidationError('No level or space specified.')
|
raise ValidationError('No level or space specified.')
|
||||||
|
|
||||||
@list_route(methods=['get'])
|
@list_route(methods=['get'])
|
||||||
@api_etag(MapUpdate.current_cache_key, cache_parameters={})
|
@api_etag(etag_func=MapUpdate.current_cache_key, cache_parameters={})
|
||||||
def geometrystyles(self, request, *args, **kwargs):
|
def geometrystyles(self, request, *args, **kwargs):
|
||||||
return Response({
|
return Response({
|
||||||
'building': '#aaaaaa',
|
'building': '#aaaaaa',
|
||||||
|
@ -225,7 +223,7 @@ class EditorViewSet(ViewSet):
|
||||||
})
|
})
|
||||||
|
|
||||||
@list_route(methods=['get'])
|
@list_route(methods=['get'])
|
||||||
@api_etag(etag_func, cache_parameters={})
|
@api_etag(etag_func=etag_func, cache_parameters={})
|
||||||
def bounds(self, request, *args, **kwargs):
|
def bounds(self, request, *args, **kwargs):
|
||||||
return Response({
|
return Response({
|
||||||
'bounds': Source.max_bounds(),
|
'bounds': Source.max_bounds(),
|
||||||
|
|
|
@ -44,5 +44,11 @@ def sidebar_view(func=None, select_related=None):
|
||||||
|
|
||||||
|
|
||||||
def etag_func(request, *args, **kwargs):
|
def etag_func(request, *args, **kwargs):
|
||||||
return (get_language() + ':' + request.changeset.raw_cache_key_by_changes + ':' +
|
try:
|
||||||
|
changeset = request.changeset
|
||||||
|
except AttributeError:
|
||||||
|
changeset = ChangeSet.get_for_request(request)
|
||||||
|
request.changeset = changeset
|
||||||
|
|
||||||
|
return (get_language() + ':' + changeset.raw_cache_key_by_changes + ':' +
|
||||||
AccessPermission.cache_key_for_request(request, with_update=False) + ':' + str(request.user.pk or 0))
|
AccessPermission.cache_key_for_request(request, with_update=False) + ':' + str(request.user.pk or 0))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue