Как использовать теги шаблонов MarkUp от Django с Google App Engine WebApp Framework - PullRequest
3 голосов
/ 11 февраля 2011

Я использую Google App Engine WebApp Framework, который работает с шаблонами Django. Я пытаюсь использовать фильтры MarkUp от Django, а в инструкциях говорится:

  • Поместите django.contrib.markup в вашу INSTALLED_APPS
  • Загрузка разметки в ваши шаблоны с помощью {% load разметки%}
  • Отфильтруйте любой текст с помощью соответствующего фильтра: {{text | textile}}

У меня вопрос, поскольку я использую инфраструктуру веб-приложений, у меня нет промежуточного программного обеспечения "INSTALLED_APP" Кто-нибудь знает, как я могу загрузить этот модуль в веб-приложение?

1 Ответ

3 голосов
/ 21 ноября 2011

Настройка библиотеки тегов:

Создайте папку в каталоге вашего приложения, например customtags.

В этой папке создайте пустой файл __init__.py

в той же папке создайте файл тегов customtags.py например

В начале файла customtags.py добавьте следующие строки

from google.appengine.ext import webapp
register = webapp.template.create_template_register()

Добавьте новую библиотеку тегов в файл main.py следующим образом:

template.register_template_library('customtags.customtags')

Предполагая, что у вас уже есть:

from google.appengine.ext.webapp import template 

Создайте теги следующим образом:

Фильтр тегов:

@register.filter
def foobar(value):
    return value

вызов из шаблона примерно так:

{{ something|foobar }}

Простой тег:

@register.simple_tag
def mysimpletag():
    print 'hello from the simple tag'

вызов из шаблона примерно так:

{% mysimpletag %}

Тег включения:

@register.inclusion_tag('templates/menu.html')
def menu():
    items = db.GqlQuery('SELECT * FROM Pages')
    return {'items':items}

вызов из шаблона так:

{% menu %}
...