GAE 导入端点 "No module named endpoints"

GAE import endpoints "No module named endpoints"

我正在使用 pycharm 开发应用引擎。现在我正在尝试使用端点并且我已经输入

libraries:
- name: pycrypto
  version: latest
- name: endpoints
  version: 1.0

然后在 main.py

import endpoints

但它给我错误

No module named endpoints

我可以在 GAE 库中看到端点文件夹。有人可以帮忙吗?

*编辑:这只是 IDE (pycharm) 找不到 endpoints 的问题。该应用程序在开发服务器或云服务器中运行良好。有一张图只是为了更清楚一点:

谢谢

您需要添加 {GAE_SDK}/lib/endpoints-1.0,而不仅仅是 SDK 本身。之所以可以导入google是因为它直接在{GAE_SDK}下。由于支持多个版本,您在 app.yaml 中指定的库布局不同。我相信您还需要添加 {GAE_SDK}/lib/protorpc-1.0/,它只是没有显示,因为已经存在导入错误。

我正在使用 PyCharm 社区的新版本,我也必须进行配置。您需要在文件 - 设置 - 项目中的每个文件夹上设置源选项,如端点:

我已经 运行 遍历了以下代码的某处,它在客户端脚本中为我修复了它。我不能说其中有多少是不必要的。您需要编辑 SDK 安装的 google_appengine 路径:

sdk_path = os.path.expanduser('~/work/google-cloud-sdk/platform/google_appengine')

try:
    import google
    google.__path__.append("{0}/google".format(sdk_path))
except ImportError:
    pass

try:
    import protorpc
    protorpc.__path__.append("{0}/lib/protorpc-1.0/protorpc".format(sdk_path))
except ImportError:
    pass

sys.path.append("{0}/lib/endpoints-1.0".format(sdk_path))