2012-03-02 4 views
1

Я сделал приложение, использующее python и движок Google, приложение работает до сих пор на локальном хосте, но когда я его развертываю с помощью запуска программы google app, я получаю следующее:google app engine: upload throws «TemplateDoesNotExist: index.html» error

Traceback (most recent call last): 
    File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/_webapp25.py", line 701, in __call__ 
    handler.get(*groups) 
    File "/base/data/home/apps/s~legacyexample01/1.357212630820400434/legacyexample.py", line 78, in get 
    self.response.out.write(template.render(path, template_values)) 
    File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/template.py", line 91, in render 
    t = _load_user_django(template_path, debug) 
    File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/template.py", line 113, in _load_user_django 
    template = django.template.loader.get_template(file_name) 
    File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/loader.py", line 79, in get_template 
    source, origin = find_template_source(template_name) 
    File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/template/loader.py", line 72, in find_template_source 
    raise TemplateDoesNotExist, name 
TemplateDoesNotExist: index.html 

мой код для рендеринга страниц заключается в следующем:

class MainPage(webapp.RequestHandler): 
    def get(self): 

     template_values = {} 

     path = os.path.join(os.path.dirname(__file__), "files/page/index.html") 
     self.response.out.write(template.render(path, template_values)) 

class RegisterPage(webapp.RequestHandler): 
    def get(self): 

     currentYear = datetime.datetime.now().year 
     firstYear = currentYear-100 
     template_values = { 
      "currentYear" : currentYear, 
      "firstYear" : firstYear, 
     } 

     path = os.path.join(os.path.dirname(__file__), "files/page/register.html") 
     self.response.out.write(template.render(path, template_values)) 

application = webapp.WSGIApplication([('/', MainPage),('/registration', RegisterPage),('/sign',RegistrationProccess) ], debug=True) 

я использую Django 1.3 и Python 2.7, что причина этой проблемы? пожалуйста, помогите

UPDATE здесь также мой YAML configutration

application: legacyexample01 
version: 1 
runtime: python 
api_version: 1 

handlers: 
- url: /files/image 
    static_dir: files/image 

- url: /files/css 
    static_dir: files/css 

- url: /files/javascript 
    static_dir: files/javascript 

- url: /files/page 
    static_dir: files/page 

- url: /.* 
    script: legacyexample.py 
+0

Работает ли страница регистрации, или они оба не работают? – RLH

ответ

7

является шаблон index.html в файлах/страницы?

редактировать:

удалить

- url: /files/page 
    static_dir: files/page 

это заявление из файла YAML.
вам нужны файлы шаблонов html, доступные из .py-файлов, а не как статические файлы.

+0

Да, он также отлично работает в localhost –

+0

Вы также загружаете файлы html? возможно, у вас есть что-то в skip_files в файле yaml. – aschmid00

+0

в файле yaml У меня есть только обработчики для поиска URL-адресов. вот что показывает механизм приложения при развертывании моего приложения: Клонирование 13 статических файлов. Клонирование файлов приложений 2. Загрузка 1 файла и капли. Загрузил 1 файл и blobs –