Python瓶可以在404捕获中捕获第二个404吗?

时间:2013-11-22 06:10:16

标签: python bottle

我已经在我的Python Bottle应用程序中成功实现了404处理 - 如下所示 - 我的应用程序需要在点击404时显示静态文件。

但是如果那个文件不在那里并且它本身会产生404呢?

现在我在这种情况下遇到应用程序错误,但是如果404捕获函数抛出404,有没有办法生成自定义404?谢谢!

from bottle import Bottle, error

"""App Instantiation"""
app = application = Bottle()

@app.error(404)
def error404(error):
    return static_file(filepath, root=domain_root)

1 个答案:

答案 0 :(得分:0)

您可以捕获处理程序中的错误,然后在引发错误时处理它:

from bottle import Bottle, error

"""App Instantiation"""
app = application = Bottle()

@app.error(404)
def error404(error):
    value=None
    try:
        value=static_file(filepath, root=domain_root)
    except <error_being_raised>:
        #generate dynamic 404 and assign it to value then return, or return
        #it straight from here
    if value != None:
        return value

就瓶子而言,它们并没有给你一个干净的方法,所以你必须自己写。