我正在使用适用于Django模板的Google App Engine WebApp Framework。我正在尝试使用Django的MarkUp过滤器,说明说:
我的问题是,因为我使用的是webapp框架,所以我没有“INSTALLED_APP”中间件。有谁知道如何在webapp中加载这个模块?
答案 0 :(得分:3)
在您的应用目录中创建一个文件夹,例如 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}
来自templte的电话如下:
{% menu %}