Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 金字塔1.3和谷歌应用引擎1.7_Python_Google App Engine_Pyramid - Fatal编程技术网

Python 金字塔1.3和谷歌应用引擎1.7

Python 金字塔1.3和谷歌应用引擎1.7,python,google-app-engine,pyramid,Python,Google App Engine,Pyramid,我成功地在谷歌应用程序引擎SDK 1.7上运行了一个金字塔1.2 WSGI应用程序。然而,我当前的项目使用了几个新的Pyramid 1.3特性,我被一个WebOb版本的问题困住了。以下是错误消息: VersionConflict: (WebOb 1.1.1 (/home/matt/Python/google_appengine/lib/webob_1_1_1), Requirement.parse('WebOb>=1.2dev') 我可以做些什么,还是必须等待新的GAE发布?您可以随时将

我成功地在谷歌应用程序引擎SDK 1.7上运行了一个金字塔1.2 WSGI应用程序。然而,我当前的项目使用了几个新的Pyramid 1.3特性,我被一个WebOb版本的问题困住了。以下是错误消息:

VersionConflict: (WebOb 1.1.1 (/home/matt/Python/google_appengine/lib/webob_1_1_1), Requirement.parse('WebOb>=1.2dev')

我可以做些什么,还是必须等待新的GAE发布?

您可以随时将自己的webob版本与应用程序捆绑在一起:

在应用程序目录中,执行以下操作:

wget http://pypi.python.org/packages/source/W/WebOb/WebOb-1.2.2.zip
unzip WebOb-1.2.2.zip
mv WebOb-1.2.2/webob .
rm -fR WebOb-1.2.2*

并重新部署应用程序。

我最终在我的virtualenv中修改了lib/python2.7/site-packages/pyramid-1.3.2-py2.7.egg/egg-INFO/requires.txt。我将WebOb>=1.2dev更改为WebOb>=1.1.1,它成功了

管理pyramid应用程序及其对appengine的依赖关系的一种相当可靠的方法是通过库生成一个使用的框架项目


免责声明:我写这篇文章是今年pycon pyramid sprint的一部分。

我将pyramid的1.3.2与appengine SDK 1.7一起使用。(目前仅适用于dev)。您正在使用哪些功能强制更新webob版本?这也可能只是安装问题。我使用进行了一次完全独立的安装,但一旦全部安装完毕,就在我的项目中创建了指向已安装libs的符号链接,而不是获取所有内容。我相信关键在于让webob与您的项目一起部署,这基本上就是pyramid_appengine所做的。sdk一直在慢慢地从webob中剔除,所以你应该很好,尽管正如Martijn指出的那样,google的官方说法是你不能。Tim,我不知道哪些功能需要webob 1.2,但在我的setup.py中,如果我没有指定金字塔版本,那么使用金字塔1.3.2,我得到了webob VersionConflict例外。如果在setup.py中,我在requires部分使用pyramid==1.2.6,那么它可以正常工作。我在Pyramid 1.3变更日志中注意到了这一点:Pyramid现在依赖于以下软件包版本:zope.interface>=3.8.0,WebOb>=1.2dev,repose.lru>=0.4,zope.deprecation>=3.5.0,translationstring>=0.4,出于Python 3兼容性的目的,我可以让Pyramid 1.3.2使用WebOb 1.1.1.1.1吗?这对我来说确实有效。可能Python3需要更高版本的Webb。正如我所说,让金字塔安装它想要的。设置项目以使用建筑物并排除webob的更高版本。它对我不起作用。我最终在我的virtualenv中修改了lib/python2.7/site-packages/pyramid-1.3.2-py2.7.egg/egg-INFO/requires.txt。我将WebOb>=1.2dev更改为WebOb>=1.1.1,它成功了!不幸的是,当您部署到appengine时,这不会有帮助