【发布时间】:2011-02-28 00:21:49
【问题描述】:
我正在编写几个 Jinja2 模板,它们基本上实现了一些常见的网格布局。我希望能够在 Pylons 应用程序和 Django 应用程序之间共享这个模板“库”。
我遇到了一个小障碍,即可以从模板的“顶级”访问 Django 的模板上下文,而 Pylons 将您的上下文包装在线程本地 c(或 tmpl_context)变量中。
这里有一些类似的例子可以证明这一点。
姜戈
from django.shortcuts import render_to_response
ctx = {}
ctx['name'] = 'John'
return render_to_response('hello.html', ctx)
你好.html:
Hello {{ name }}
塔架
from pylons import tmpl_context as c
from myapp.lib.base import render
c.name = 'John'
return render('hello.html')
你好.html:
Hello {{ c.name }}
我要做的是让hello.html 在两个框架中都相同。
我看到的一种方法是包装 Django render_to_response 并执行以下操作:
ctx['c'] = ctx
但这感觉不对。有人看到这个的其他替代品吗?
谢谢
【问题讨论】: