【问题标题】:redirect is throwing a "Resource was found at " exception in turbogears 2.3重定向在 turbogears 2.3 中抛出“资源被发现于”异常
【发布时间】:2016-05-07 09:36:08
【问题描述】:

当用户访问某个控制器并且满足某个条件时,我想将用户重定向到其他页面,但是当我尝试抛出“在异常时找到资源”时。下面是我正在尝试的代码。

@expose("sample.templates.show_id")
def show_id(self, **kw):
    try:
        if kw['u']==1:
            redirect ("/")
        else:
            groups = self.handle_u(kw['u'])
    except Exception as e:
        print str(e)
    return dict(groups=groups)

当 kw['u']==1 时,它不会将我带到索引页面,而是抛出提到的错误。请建议我如何进行。

【问题讨论】:

    标签: python-2.7 url-redirection turbogears2


    【解决方案1】:

    redirect 引发 HTTPFound 异常,因此您在 except 子句中捕获了它。可能您想让except 更具体,或者将redirect 移出try

    【讨论】:

    • 非常感谢。只是想知道如何导入 HTTPFound 异常,以便在发生此异常时轻松引发它。目前我正在使用 sys.exc_info()[0].__name__ 来查找异常的名称然后引发它。
    • from tg.exceptions import HTTPFound
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-29
    • 2014-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多