2013-02-22 5 views
0

Обновлено: Feb, 22 По просьбе Липиса. Я добавил код для создания шаблона.TemplateNotFound при развертывании на сайт Google App Engine

Я разработал раздел администрирования на своем веб-сайте, который отлично работал в моей локальной среде (localhost: 8080). Когда я развернул приложение на своем сайте appengine, я получаю ошибку TemplateNotFound, когда я перехожу к http: // myapp/myadmin/, который должен забрать файл default.html в каталоге admin. Файл html находится в каталоге templates \ admin.

Структура файла для моих шаблонов:

--app 
    --templates 
    --admin 
      -default.html 
    -file.html 
    -file1.html 
    -file2.html 

Я использую следующий код для создания среды дзиндзя:

FolderPath = os.path.dirname(os.path.dirname(__file__)) 
jinja_environment = jinja2.Environment(
    loader=jinja2.FileSystemLoader(
     [ 
      os.path.join(FolderPath,"templates\\admin"), 
      os.path.join(FolderPath,"templates") 
     ] 
    ) 
) 

Обновлено - Шаблон Визуализировать Код:

template_values = {} 

template = jinja_environment.get_template('default.html') 
self.response.out.write(template.render(template_values)) 

Я принимаю его "FolderPath" переменная, которая вызывает проблему, но не на 100% уверен. Кто-нибудь сталкивается с этой проблемой?

  • Язык: питона 2,7
  • ОС: Windows 7
  • IDE: PyCharms 2,7

ОШИБКА:

default.html Traceback (most recent call last): File "/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 1511, in call rv = self.handle_exception(request, response, e) File "/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 1505, in call rv = self.router.dispatch(request, response) File "/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 1253, in default_dispatcher return route.handler_adapter(request, response) File "/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 1077, in call return handler.dispatch() File "/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 547, in dispatch return self.handle_exception(e, self.app.debug) File "/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 545, in dispatch return method(*args, **kwargs) File "/base/data/home/apps/s~myapp/0-2-5.365473085936457098/app/controllers/admin.py", line 42, in get template = jinja_environment.get_template('default.html') File "/python27_runtime/python27_lib/versions/third_party/jinja2-2.6/jinja2/environment.py", line 719, in get_template return self._load_template(name, self.make_globals(globals)) File "/python27_runtime/python27_lib/versions/third_party/jinja2-2.6/jinja2/environment.py", line 693, in _load_template template = self.loader.load(self, name, globals) File "/python27_runtime/python27_lib/versions/third_party/jinja2-2.6/jinja2/loaders.py", line 115, in load source, filename, uptodate = self.get_source(environment, name) File "/python27_runtime/python27_lib/versions/third_party/jinja2-2.6/jinja2/loaders.py", line 180, in get_source raise TemplateNotFound(template) TemplateNotFound: default.html

Заранее спасибо за вашу помощь!

+0

вы можете также вставить код питона, когда вы рендеринг шаблона? – Lipis

ответ

1

Попробуйте "templates/admin". Эта обратная косая черта - это Windows-изм.

0

В идеале использовать Linux (Ubuntu Возможно или Mint) Это сэкономит вам головную боль в долгосрочной перспективе, а также

+0

Спасибо за совет peterretief, но это не отвечает на мой вопрос. – Zaffiro

Смежные вопросы