detect whether an HTTP POST to .../items is a transaction or CQL

This commit is contained in:
Tom Kralidis
2022-09-30 09:22:59 -04:00
parent d08b8e6ab2
commit e191bf4768
3 changed files with 23 additions and 16 deletions
+7 -3
View File
@@ -140,9 +140,13 @@ def collection_items(request: HttpRequest, collection_id: str) -> HttpResponse:
collection_id,
)
elif request.method == 'POST':
response_ = _feed_response(
request, 'manage_collection_item', request, 'create', collection_id
)
if request.content_type is not None:
if request.content_type == 'application/geo+json':
response_ = _feed_response(request, 'manage_collection_item',
request, 'create', collection_id)
else:
response_ = _feed_response(request, 'post_collection_items',
request, collection_id)
response = _to_django_response(*response_)
+7 -6
View File
@@ -195,12 +195,13 @@ def collection_items(collection_id, item_id=None):
api_.get_collection_items(request, collection_id))
elif request.method == 'POST': # filter or manage items
if request.content_type is not None:
return get_response(
api_.manage_collection_item(request, 'create',
collection_id))
else:
return get_response(
api_.post_collection_items(request, collection_id))
if request.content_type == 'application/geo+json':
return get_response(
api_.manage_collection_item(request, 'create',
collection_id))
else:
return get_response(
api_.post_collection_items(request, collection_id))
elif request.method == 'DELETE':
return get_response(
+9 -7
View File
@@ -233,13 +233,15 @@ async def collection_items(request: Request, collection_id=None, item_id=None):
api_.get_collection_items(
request, collection_id))
elif request.method == 'POST': # filter or manage items
if request.headers.get('content-type') is not None:
return get_response(
api_.manage_collection_item(request, 'create',
collection_id))
else:
return get_response(
api_.post_collection_items(request, collection_id))
content_type = request.headers.get('content-type')
if content_type is not None:
if content_type == 'application/geo+json':
return get_response(
api_.manage_collection_item(request, 'create',
collection_id))
else:
return get_response(
api_.post_collection_items(request, collection_id))
elif request.method == 'DELETE':
return get_response(