我一直在使用Pydev / Eclipse来开发Google App Engine(GAE)应用程序,但我无法从WebOb获取响应/请求对象以进行自动完成。我使用widely recommended tutorial来配置所有内容;自动完成正在为我遇到的其他一切工作。
举个例子:如果我输入“self”。我得到自动完成响应和请求;如果我选择其中一个,说“响应”,并添加“。” (将完整的行带到“self.response。”到目前为止)我没有任何选择 - 因为包含WebOb库,我希望得到像“out.write()”这样的选项。
我将以下库包含在我的Pydev项目中:
非常感谢任何帮助,谢谢。
答案 0 :(得分:2)
我已经尝试过我的安装,但它确实有效。 但是,请记住,PyDev的分析会在遇到错误时停止,这可能是自动完成在您的情况下不起作用的原因。
我建议你与主要开发者Fabio Zadrozny取得联系;他非常友好和乐于助人,还运行了blog,其中包含许多有用的技巧,可以使用各种框架配置PyDev,以及所有限制。
答案 1 :(得分:0)
显然,这是各种Python IDE的已知问题 - 似乎没有人有单一的解决方案。谷歌改变了一些内部路径,只能通过执行python脚本来确定它。我无法为Pydev提出令人满意的解决方案,尽管Wing IDE有一个不错的解决方案:
Wing无法解析更新版本的Google App Engine中的sys.path hackery,因此可能无法找到一些自动完成,goto-definition和其他功能的模块。要解决此问题,请在dev_appserver.py中的fix_sys_path中设置断点并开始调试。
然后,在Debug Probe工具中(仅在Wing Pro中)输入以下内容:
os.pathsep.join(EXTRA_PATHS)
将其复制到剪贴板,右键单击该文件,打开dev_appserver.py的文件属性。然后,在Environment选项卡下为Python Path选择Custom,单击View as Text按钮并粘贴额外路径。
如果你移动app引擎安装,你需要重做这个,或者你可以使用$ {WING:PROJECT_DIR}将这些路径转换为基于项目文件的位置。