エラーの制御

入力エラーなどでエラー画面に遷移したい。
お任せ下さい。Pyramidならすぐです。(WebFrameworkならどれも実装していそう)

views.py

class VariableError(Exception):
    def __init__(self, msg):
        self.msg = msg

@view_config(context=VariableError, renderer='error.mak')
def err(exc, request):
    '''エラー発生時
    '''
    return {'errmsg': exc.msg}

@view_config(route_name='setlog', request_method='GET')
def set_log_error(request):
    '''GETははじく
    '''
    raise VariableError('不正な投稿をしないで下さい(GET)')

たとえば、掲示板への投稿にGETを使ったら、「不正な投稿をしないで下さい(GET)」と表示させたい。
そんな画面遷移が実現されちゃいます。
exc.msgはなんか勝手に定義されているらしい。