django在视图中捕获异常并重定向

时间:2015-07-12 15:17:11

标签: python django exception view

我有一个调用另一个函数的视图:

def someview(request):
    myfunc(**kwargs):
    #catch exception from myfunc
    if exception ValidationError:
         return render("sometemplate.html)
    elif exception IntegrityError:
        return render("sometemplate1.html")
    else:
        return render("sometemplate2.html")

这里myfunc返回一些异常。如果该函数中存在异常,我想重定向我的视图。 如何捕获异常并重定向视图。 谢谢

1 个答案:

答案 0 :(得分:1)

只需使用try/except

即可
def someview(request):
    try:
        myfunc(**kwargs):
    except ValidationError:
        return render("sometemplate.html")
    except IntegrityError:
        return render("sometemplate1.html")

    return render("success.html")