我正在尝试在 Google App Engine 上托管 Django 应用程序,因此我正在使用Django nonrel并按照这些说明进行操作。现在,试图让Python 社交身份验证工作,我遇到了两个问题。
首先,当使用与 Python social 中的示例 Django 配置非常相似的代码时,尝试从正在运行的服务器加载 url,我得到这个:
Traceback (most recent call last):
File "/home/pablo/scripts/google_appengine/google/appengine/tools/dev_appserver.py", line 2989, in _HandleRequest
self._Dispatch(dispatcher, self.rfile, outfile, env_dict)
File "/home/pablo/scripts/google_appengine/google/appengine/tools/dev_appserver.py", line 2832, in _Dispatch
request_file = open(request_file_name, 'wb')
File "/home/pablo/scripts/google_appengine/google/appengine/dev_appserver_import_hook.py", line 605, in __init__
raise IOError('invalid mode: %s' % mode)
IOError: invalid mode: wb
在某处,该应用程序正在尝试创建 App Engine 不允许的本地文件,但我很困惑,因为这是来自 App Engine 的代码。有谁知道这可能来自哪里?
其次,当我尝试在服务器上访问 root 时,我收到以下错误:
... [many lines elided]
File "/home/pablo/scripts/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 692, in Decorate
return func(self, *args, **kwargs)
File "/home/pablo/scripts/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 1642, in FindAndLoadModule
description)
File "/home/pablo/scripts/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 692, in Decorate
return func(self, *args, **kwargs)
File "/home/pablo/scripts/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 1589, in LoadModuleRestricted
description)
File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 42, in <module>
raise ImportError, str(msg) + ', please install the python-tk package'
ImportError: No module named _tkinter, please install the python-tk package
在某个地方,Django 正在尝试使用python-tk
for Tkinter
,但据我了解,python-tk 是一个 GUI 库。它是如何到达这里的,我怎样才能摆脱任何需要它的代码?
作为参考,这是我在urls.py
访问正在运行的服务器时尝试的域调用的函数(并出现这些错误):
def home(request):
"""Home view, displays login mechanism"""
if request.user.is_authenticated():
return redirect('done')
return render_to_response('home.html', {
'plus_id': getattr(settings, 'SOCIAL_AUTH_GOOGLE_PLUS_KEY', None)
}, RequestContext(request))
任何帮助将不胜感激——我对 Django 和 Python 还是很陌生,我很想从这个开始:D