Google App Engine jinja2: ImportError: нет модуля с именем _markupsafe - PullRequest
16 голосов
/ 13 ноября 2011

Если вы следуете руководству по началу работы с Python2.7, вы перейдете к шаблонной части здесь . Для меня в Ubuntu 11.10 я получил бы ужасную трассировку стека, которая заканчивалась:

  File "/home/fratrik/code/google_appengine/google/appengine/tools/dev_appserver_import_hook.py", line 1571, in LoadModuleRestricted
    description)
  File "/usr/lib/python2.7/dist-packages/jinja2/utils.py", line 587, in <module>
    from jinja2._markupsafe import Markup, escape, soft_unicode
ImportError: No module named _markupsafe

Важная часть на самом деле вверху:

ERROR    2011-11-13 00:48:12,767 dev_appserver_import_hook.py:1386] Third party package markupsafe must be included in the "libraries:" clause of your app.yaml file in order to be imported.

Ответы [ 2 ]

46 голосов
/ 13 ноября 2011

Ответ заключается в добавлении следующего к вашему app.yaml

libraries:                                                                      
- name: jinja2                                                                  
  version: latest                                                               
- name: markupsafe                                                              
  version: latest                                                                                

(для python2.7)

1 голос
/ 14 ноября 2011

Вы можете импортировать модуль jinja2, который поставляется с ядром приложения SDK.Добавьте путь к каталогам google_appengine/lib/webapp2 и google_appengine/lib/webapp2/webapp2_extras в ваши $PYTHONPATH.

import webapp2
from webapp2_extras import jinja2

вместе с записями yaml.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...