我用
def notfound(request):
return HTTPFound(location="/login")
def main(globals, **settings):
config = Configurator()
config.add_notfound_view(notfound)
但它在我的基于遍历的项目中并不起作用。如何在遍历中实现它?我是对的还是有任何其他特定方式来进行重定向
答案 0 :(得分:1)
如果没有路由匹配或遍历视图查找找不到匹配的视图类型,则Pyramid返回“未找到”视图的结果。如果您的设置没有重定向,遍历找到任何上下文。如果这不起作用,请启动一个新的金字塔应用程序来测试这些简单的概念。
在文档中查看这些页面。这是非常好的解释。
要调试特殊情况,请启用pyramid.debug_notfound environment setting并学习使用pyramid_debugtoolbar来改善调试功能。
通常您希望使用“禁止查看”来重定向到登录页面。
了解遍历算法 - 我的建议:打印模型图遍历并将其暴露在办公桌附近。