0

我正在尝试通过以下操作将 app-engine-patch 与 pyamf 一起使用:http://pyamf.org/wiki/GoogleAppEngine因为我想将我的 Django <-> pyamf 应用程序迁移到 app-engine-patch <-> pyamf .

我现在所拥有的是我只用一行代码创建了我的 gateway.py:

import pyamf

只是为了测试我可以使用 pyamf 并且当我将浏览器指向该 url/文件时我得到空白页面,这样看起来不错(没有导入问题并且找到了 pyamf)但是在命令提示符中我使用“manage.py runserver”启动服务器" 我看到一堆错误,例如:

...
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver.py", line 2238, in Dispatch
    self._module_dict)
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver.py", line 2156, in ExecuteCGI
    reset_modules = exec_script(handler_path, cgi_path, hook)
  File "C:\Program Files (x86)\Google\google_appengine\google\appengine\tools\dev_appserver.py", line 2052, in ExecuteOrImportScript
    exec module_code in script_module.__dict__
  File "C:\Users\[my app-engine-patch application path]\common\appenginepatch\main.py", line 16, in <module>
    patch_all()
  File "C:\Users\[my app-engine-patch application path]\common\appenginepatch\appenginepatcher\patch.py", line 29, in patch_all
    patch_app_engine()
  File "C:\Users\[my app-engine-patch application path]\common\appenginepatch\appenginepatcher\patch.py", line 193, in patch_app_engine
    from django.utils.encoding import force_unicode, smart_str
ImportError: No module named encoding

是否有任何 pyamf <-> app-engine-patch 专家可以提示我做错了什么以及如何设置 pyamf 以使用 app-engine-patch?

4

1 回答 1

1

您是否在应用引擎启动代码中激活 Django 1.0.2?App Engine 现在附带它,而且(为了向后兼容)0.9.6,并且(仍然为了向后兼容)0.9.6 是它的默认值 - 解决这个问题所需要的只是在启动时使用:

from google.appengine.dist import use_library
use_library('django', '1.0')

然后“后续尝试导入 django 包将使用 Django 1.0.2。”。您确实需要单独安装带有 SDK 的 1.0.2。在此处查看所有说明。

于 2009-08-22T19:04:17.673 回答