pyramid_cubicweb/rest_api.py
author Julien Cristau <julien.cristau@logilab.fr>
Fri, 01 Apr 2016 16:50:12 +0200
changeset 11615 7e798fe70014
parent 11601 23a62d151382
permissions -rw-r--r--
[bwcompat] send 403 on authentication errors (closes #12219849) 200 is just wrong.

from __future__ import absolute_import


from pyramid.httpexceptions import HTTPNotFound
from pyramid.view import view_config
from pyramid_cubicweb.resources import EntityResource, ETypeResource
from pyramid_cubicweb.predicates import MatchIsETypePredicate


@view_config(
    route_name='cwentities',
    context=EntityResource,
    request_method='DELETE')
def delete_entity(context, request):
    context.rset.one().cw_delete()
    request.response.status_int = 204
    return request.response


def includeme(config):
    config.add_route(
        'cwentities', '/{etype}/*traverse',
        factory=ETypeResource.from_match('etype'), match_is_etype='etype')
    config.scan(__name__)