503子类的金字塔视图

时间:2015-09-16 18:40:38

标签: python pyramid

当我在我的应用中遇到特定情况时,我想提供一些模板化的html以及503状态代码。子类化金字塔503异常代表了这个方便:

from pyramid.httpexceptions import HTTPServiceUnavailable
class PleaseWait(HTTPServiceUnavailable):
    pass

def business_logic():
    if not_ready():
        raise PleaseWait()

我无法弄清楚是否可以将模板连接到PleaseWait。这几乎可以工作,但是代码为200:

config.add_view(
    renderer='templates/please_wait.jinja2',
    context='my_app.PleaseWait',
)

这完全有效,但看起来很混乱:

@view_config(context=PleaseWait, renderer='templates/please_wait.jinja2')
def please_wait(exc, request):
    request.response.status = 503
    return {}

这也有效,但似乎很奇怪:request.response = exc

0 个答案:

没有答案