Pylons重定向给出:AttributeError:'HTTPFound'对象没有属性'exception'

时间:2014-06-08 07:13:09

标签: python pylons

(这个问题是记录我对一个错误的研究,以节省其他人花时间解决的问题。)

我有一个基于Pylons 1.0.1框架的网页。

开发人员建议迁移到他们的新产品Pyramids的升级路径。 Pylons 1.0.1将不会做进一步的工作。

但是,我不需要任何进一步的功能 - 网站处于维护状态,所以我没有升级框架。

最近,在将一些其他更改部署到服务器之后,尽管我的代码没有任何更改,但网站仍停止工作。特别是,对重定向的调用给出了错误:

  

AttributeError:'HTTPFound'对象没有属性'exception'

2 个答案:

答案 0 :(得分:5)

Pylons依赖WebOb。在依赖项中,它要求安装WebOb> = 1.3.1。

在WebOb 1.3.1中,属性'例外'提供了。 Pylons在重定向代码中使用此属性。

此属性已弃用一段时间,最初计划在1.3中删除。

2014年5月14日,WebOb 1.4发布。虽然它未包含在发行说明中,但其中一项更改是remove the exception attribute

因此,如果您安装Pylons 1.0.1并让它选择所有依赖项,它将包含一个与其不再兼容的WebOb版本。

这解释了问题。

(解决方案不太清楚:降级WebObs?等待可能永远不存在的Pylons 1.0.2?迁移到金字塔?)

答案 1 :(得分:1)

我已升级到最新版本: https://github.com/Pylons/pylonshttps://github.com/Pylons/webob 问题消失了!

以下是我的步骤:

git clone git@github.com:Pylons/webob.git
cd webob/ & python setup.py install --user
git clone git@github.com:Pylons/pylons.git
cd pylons/ & python setup.py install --user

我所使用的确切版本:

挂架:

pylons$ git log -1 --decorate=full
commit 7e8bac74046ba1ae1509c844fa5cd878490a3413 (HEAD, refs/remotes/origin/master, refs/remotes/origin/HEAD, refs/heads/master)
Date:   Tue Jul 7 18:05:23 2015 -0700

的WebOb:

webob$ git log -1 --decorate=full
commit 565fe4420c147623c4a8f1077d6deab7ba732040 (HEAD, refs/remotes/origin/master, refs/remotes/origin/HEAD, refs/heads/master)
Date:   Sat Jun 27 22:03:39 2015 -0600

另请参阅我在zookeepr的安装步骤,我发现了这个问题:

https://github.com/flosokaks/zookeepr/commit/70766f190d58c04fec625be82ec56b7c6d405fb7#diff-7d442b7eb49f5fc377f51e74b291cfc1R18