如何将 Django 的标记模板标签与 Google App Engine WebApp 框架一起使用
Posted
技术标签:
【中文标题】如何将 Django 的标记模板标签与 Google App Engine WebApp 框架一起使用【英文标题】:How do I use Django's MarkUp Templates Tags with Google App Engine WebApp Framework 【发布时间】:2011-06-25 06:42:03 【问题描述】:我正在使用适用于 Django 模板的 Google App Engine WebApp 框架。我正在尝试使用 Django 的标记过滤器和说明说:
将 django.contrib.markup 放入您的 INSTALLED_APPS 通过 % load markup % 在模板中加载标记 使用适当的过滤器过滤任何文本: text|textile我的问题是因为我使用的是 webapp 框架,所以我没有“INSTALLED_APP”中间件。有谁知道我如何在 webapp 中加载这个模块?
【问题讨论】:
你试过这样的事情吗? daily.profeth.de/2008/04/… 我没有。我明天试试这个。谢谢 【参考方案1】:设置标签库:
在您的应用目录中创建一个文件夹,例如 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 %
【讨论】:
用户没有问如何创建自己的标签,他问的是如何加载现有的库。以上是关于如何将 Django 的标记模板标签与 Google App Engine WebApp 框架一起使用的主要内容,如果未能解决你的问题,请参考以下文章
在 Javascript 中使用 DJango 模板标签添加 Google 地图标记
如何在 Django 模板中的“带有模板标签”中设置 Django 渲染块值?
是否可以将查询参数传递给 Django % url % 模板标签?