diff --git a/ringo/resources.py b/ringo/resources.py index 0feeac7f..3643eabf 100644 --- a/ringo/resources.py +++ b/ringo/resources.py @@ -1,5 +1,6 @@ import logging from sqlalchemy.orm.exc import NoResultFound +from sqlalchemy.exc import DataError from pyramid.httpexceptions import HTTPNotFound from ringo.lib.helpers import get_item_modul @@ -53,9 +54,12 @@ def _load_item(self, id, request): try: factory = self.__model__.get_item_factory() return factory.load(id, request.db) + except DataError: + raise HTTPNotFound() except NoResultFound: raise HTTPNotFound() + def _get_item_permissions(self, request): return self.__model__._get_permissions(self.__modul__, self.item, request)