The easiest way to do this is to override the error () method on your base handler (suppose you have one) to create a 404 page and call it from your regular handlers and your 404 handler. For example:
class BaseHandler(webapp.RequestHandler):
def error(self, code):
super(BaseHandler, self).error(code)
if code == 404:
class MyHandler(BaseHandler):
def get(self, some_id):
some_obj = SomeModel.get_by_id(some_id)
if not some_obj:
self.error(404)
return
class Error404Handler(BaseHandler):
def get(self):
self.error(404)
source
share