大家好我正在與AppEngine苦苦掙扎,我在開發服務器上做了我的webapp,一切正常,但是一旦我部署它就會給我一個ImportError。 我的主目錄如下:GAE/Python ImportError只在部署版本上
-/
-Several
-Folders
-...
*admin.py
*app.yaml
*db_objects.py
*index.yaml
*img_getter.py
*keys.py
*main.py
*main_handler.py
我的app.yaml文件:
application: myapplication (this is not the real name)
version: 1
runtime: python27
api_version: 1
threadsafe: yes
default_expiration: "7d"
handlers:
- url: /favicon\.ico
static_files: favicon.ico
upload: favicon\.ico
- url: /css
static_dir: css
- url: /img
static_dir: img
- url: /images
static_dir: images
- url: /js
static_dir: js
- url: /admin.*
script: admin.app
login: admin
- url: /checkout.*
script: main.app
login: required
- url: /confirm.*
script: main.app
login: required
- url: /changeinfo.*
script: main.app
login: required
- url: .*
script: main.app
libraries:
- name: webapp2
version: "2.5.2"
- name: jinja2
version: latest
當我去myaddress.appengine.com/admin它給了我這個錯誤:
Traceback (most recent call last):
File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/base/data/home/runtimes/python27/python27_lib/versions/1/google/appengine/runtime/wsgi.py", line 85, in LoadObject
obj = __import__(path[0])
File "/base/data/home/apps/s~myapplication/1.383371027775991819/admin.py", line 7, in <module>
import img_getter
ImportError: No module named img_getter
這是admin.py的開頭:
#coding=utf-8
import webapp2
from main_handler import Handler
import db_objects
from google.appengine.ext import db
import img_getter
from google.appengine.api import memcache
import keys
from datetime import date
class MainHandler(Handler):
def get(self):
self.redirect("/admin/noticias")
...
這是img_getter.py文件的開頭:
import gdata.photos.service
import gdata.media
import gdata.geo
def foo(variable):
...
def bar(variable):
...
#functions to get images from the google picassa service
事情是我一直在開發的開發者服務器上的Web應用程序這和它一直工作就像一個魅力,我甚至清除了數據存儲並嘗試在幾臺電腦上運行,但它仍然在運行,但是當我嘗試在Google服務器上測試它時,我發現這個錯誤。
我沒有在app.yaml文件中定義任何引用,因爲我認爲它不是必需的,因爲它不是依賴於google python API的庫,我錯了嗎? 有誰知道問題是什麼?
非常感謝:)
非常感謝你,它非常完美。我一直在使用python和appengine幾個月,但我不知道這一點。再次感謝:) – user3441860 2015-04-04 18:20:04
我的榮幸。當我開始時,那個人也絆倒了我。乾杯! – humanbeing 2015-04-04 21:43:12