detect whether an HTTP POST to .../items is a transaction or CQL
This commit is contained in:
@@ -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_)
|
||||
|
||||
|
||||
@@ -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(
|
||||
|
||||
@@ -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(
|
||||
|
||||
Reference in New Issue
Block a user